How to use xpath method of Actions Package

Best Howitzer_ruby code snippet using Actions.xpath

instances_steps.rb

Source:instances_steps.rb Github

copy

Full Screen

1When /^client follow ([\w\-]+) href attribute in first instance$/ do |element|2 get output_xml.xpath('/instances/instance[1]/'+element).first[:href], {}3end4Then /^client should get valid ([\w\-]+)$/ do |element|5 last_response.status.should == 2006 output_xml.xpath("/#{element}").first.should_not be_nil7end8Then /^each running instance should have actions$/ do9 output_xml.xpath('/instances/instance').each do |instance|10 next if instance.xpath('state').text!='RUNNING'11 instance.xpath('actions').first.should_not be_nil12 end13end14Then /^each actions should have some links$/ do15 output_xml.xpath('/instances/instance').each do |instance|16 next if instance.xpath('state').text!='RUNNING'17 instance.xpath('actions/link').first.should_not be_nil18 end19end20Then /^each link should have valid (\w+) attribute$/ do |attr|21 output_xml.xpath('/instances/instance').each do |instance|22 next if instance.xpath('state').text!='RUNNING'23 instance.xpath('actions/link').first[attr].should_not be_nil24 end25end26When /^client want to '(\w+)' (first|last|RUNNING) instance$/ do |action, position|27 @action = action28 if position=='first'29 @instance = output_xml.xpath('/instances/instance').first30 elsif position == 'RUNNING'31 @instance = output_xml.xpath('/instances/instance/state[text()="RUNNING"]').first.parent32 else33 @instance = output_xml.xpath('/instances/instance').last34 end35end36When /^client follow link in actions$/ do37 unless @instance.xpath('id')38 l = output_xml.xpath('/instances/instance[1]/actions/link[@rel="'+@action+'"]').first39 else40 l = @instance.xpath('actions/link[@rel="'+@action+'"]').first41 end42 post l[:href]43 last_response.status.should_not == 50044end45Then /^client should get (first|last) instance$/ do |position|46 if position == 'last'47 output_xml.xpath('/instance/id').last.should_not be_nil48 else49 output_xml.xpath('/instance/id').first.should_not be_nil50 end51end52Then /^this instance should be in '(.+)' state$/ do |state|53 output_xml.xpath('/instance/state').first.text.should == state54end55Then /^each instance should have address type set to "([^"]*)"$/ do |t|56 output_xml.xpath('/instances/instance/public_addresses/address').first[:type].should == t57 output_xml.xpath('/instances/instance/private_addresses/address').first[:type].should == t58end59When /^client want to create a new instance$/ do60end61Then /^client should choose (\w+) image$/ do |position|62 get '/api/images', {}63 if position=='first'64 @image = output_xml.xpath('/images/image').first65 else66 @image = output_xml.xpath('/images/image').last67 end68 @image.should_not be_nil69end70When /^client request for a new instance$/ do71 params = {72 :image_id => @image.xpath('@id').first.text73 }74 params[:hwp_id] = @hwp_id if @hwp_id75 params[:public_ip] = @public_ip if @public_ip76 post "#{@uri}", params77end78Then /^new instance should be created$/ do79 last_response.status.should == 20180end81Then /^this instance should have chosed image$/ do82 output_xml.xpath('/instance/image').first[:href].should == @image[:href]83end84Then /^this instance should have valid id$/ do85 output_xml.xpath('instance/@id').first.should_not be_nil86end87Then /^this instance should have name$/ do88 output_xml.xpath('instance/name').first.should_not be_nil89end90When /^client want to '(\w+)' created instance$/ do |action|91 get @instance_url, {}92 last_response.status.should == 20093 @action = action94 @instance = output_xml.xpath('/instance')95end96Then /^client should get created instance$/ do97 last_response.status.should == 20298 #get last_response.headers['Location']99end100When /^this instance should be destroyed$/ do101 # TODO: Fix this bug in mock driver ?102end103Then /^client should get HTML form$/ do104 last_response.status.should == 200105 (last_response.body.strip =~ /^<!DOCTYPE html/).should be_true106end107When /^client choose (\w+) hardware profile$/ do |position|108 get '/api/hardware_profiles', {}109 if position=='last'110 @hwp_id = output_xml.xpath('/hardware_profiles/hardware_profile/@id').last.text111 else112 @hwp_id = output_xml.xpath('/hardware_profiles/hardware_profile/@id').first.text113 end114end115When /^client choose public IP address '([\w\.]+)'$/ do |address|116 @public_up = address117end118Then /^this instance should have last hardware profile$/ do119 output_xml.xpath('instance/hardware_profile/@id').first.text.should == @hwp_id120end121Given /^I set mock scenario to (\w+)$/ do |scenario|122 @scenario = scenario123end124Then /^I set mock scenario to default$/ do125 @scenario = ''126end127Then /^IP address for this instance should be '([\w\.]+)'$/ do |address|128end...

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 @driver.find_element(:xpath, "//input[@name='q']").send_keys("hello world")2 @driver.find_element(:css, "input[name='q']").send_keys("hello world")3 @driver.find_element(:link_text, "Gmail").click4 @driver.find_element(:partial_link_text, "Gma").click

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 @driver.find_element(:xpath, "//input[@name='q']").send_keys 'Selenium'2 @driver.find_element(:xpath, "//button[@name='btnG']").click3 @driver.find_element(:link, 'Selenium - Web Browser Automation').click4 @driver.find_element(:css, "input[name='q']").send_keys 'Selenium'5 @driver.find_element(:css, "button[name='btnG']").click6 @driver.find_element(:link, 'Selenium - Web Browser Automation').click7 @driver.find_element(:id, 'lst-ib').send_keys 'Selenium'8 @driver.find_element(:name, 'btnG').click9 @driver.find_element(:link, 'Selenium - Web Browser Automation').click

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 @browser.text_field(:name, "q").set("watir")2 @browser.button(:name, "btnG").click3 @browser.link(:xpath, "//h3/a").click4 assert(@browser.text.include?("Watir"))5 @browser.text_field(:name, "q").set("watir")6 @browser.button(:name, "btnG").click7 @browser.link(:css, "h3.r a").click8 assert(@browser.text.include?("Watir"))9 @browser.text_field(:name, "q").set("watir")10 @browser.button(:name, "btnG").click11 @browser.link(:text, "Watir - Wikipedia, the free encyclopedia").click12 assert(@browser.text.include?("Watir"))

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")2driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)3driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")4driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)5driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")6driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)7driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")8driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 def initialize(driver)2 def xpath(path)3 @driver.find_element(:xpath, path)4 def xpath_attribute(path, attribute)5 @driver.find_element(:xpath, path).attribute(attribute)6 @actions = Actions.new(@driver)7 assert_equal "Google", @actions.xpath_attribute("//title", "text")

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1browser.text_field(:name => 'q').set 'watir'2browser.element(:xpath => '//a[contains(text(), "home")]').click3browser.text_field(:name => 'q').set 'watir'4browser.link(:text => 'Home').click5browser.text_field(:name => 'q').set 'watir'6browser.link(:text => 'Home').click7browser.text_field(:name => 'q').set 'watir'8browser.link(:text => 'Home').click9browser.text_field(:name => 'q').set 'watir'10browser.link(:text => 'Home').click11browser.text_field(:name => 'q').set 'watir'12browser.link(:text => 'Home').click13browser.text_field(:name => 'q').set 'watir'14browser.link(:text => 'Home').click15browser.text_field(:name => 'q').set 'watir'16browser.link(:text => 'Home').click17 @browser.text_field(:name, "q").set("watir")18 @browser.button(:name, "btnG").click19 @browser.link(:xpath, "//h3/a").click20 assert(@browser.text.include?("Watir"))21 @browser.text_field(:name, "q").set("watir")22 @browser.button(:name, "btnG").click23 @browser.link(:css, "h3.r a").click24 assert(@browser.text.include?("Watir"))25 @browser.text_field(:name, "q").set("watir")26 @browser.button(:name, "btnG").click27 @browser.link(:text, "Watir - Wikipedia, the free encyclopedia").click28 assert(@browser.text.include?("Watir"))

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")2driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)3driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")4driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)5driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")6driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)7driver.find_element(:xpath, "//input[@name='q']").send_keys("Selenium")8driver.find_element(:xpath, "//input[@name='q']").send_keys(:enter)

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 @driver.find_element(:xpath, "//input[@name='q']").send_keys("hello world")2 @driver.find_element(:css, "input[name='q']").send_keys("hello world")3 @driver.find_element(:link_text, "Gmail").click4 @driver.find_element(:partial_link_text, "Gma").click

Full Screen

Full Screen

xpath

Using AI Code Generation

copy

Full Screen

1 @browser.text_field(:name, "q").set("watir")2 @browser.button(:name, "btnG").click3 @browser.link(:xpath, "//h3/a").click4 assert(@browser.text.include?("Watir"))5 @browser.text_field(:name, "q").set("watir")6 @browser.button(:name, "btnG").click7 @browser.link(:css, "h3.r a").click8 assert(@browser.text.include?("Watir"))9 @browser.text_field(:name, "q").set("watir")10 @browser.button(:name, "btnG").click11 @browser.link(:text, "Watir - Wikipedia, the free encyclopedia").click12 assert(@browser.text.include?("Watir"))

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Howitzer_ruby automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Most used method in

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful