如何通过python循环进行Selenium测试

时间:2019-06-24 12:57:59

标签: python selenium selenium-webdriver

我已经研究了如何在硒中循环,但是还没有找到对我有用的答案。基本上,这是我的代码需要遵循的步骤:

  
      
  1. 从csv文件中逐行获取数据并将其提供给网络应用
  2.   
  3. 第1行中的第一个数据将进行1次硒测试,并将数据保存在网络应用程序中
  4.   
  5. 硒将再次循环并转到csv文件中的第二行数据,然后再次保存并再次循环,直到csv中的所有数据都保存在其中   网络应用。
  6.   

此代码有效,但它仅在数据的第一行上停止,而不会继续到数据的第二行,依此类推。

driver = webdriver.Firefox()
driver.get("https://*****/")

file = open("testfile.csv")
reader = csv.DictReader(file)
data = [row for row in reader]

for row in data:
    Name = (row["Name"])
    Eadd = (row["Eadd"])

time.sleep(10)
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Name'])[1]/following::input[1]").click()
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Name'])[1]/following::input[1]").send_keys(Name)
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Email'])[1]/following::textarea[1]").click()
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Email'])[1]/following::textarea[1]").clear()
driver.find_element_by_xpath("(.//*[normalize-space(text()) and normalize-space(.)='Email'])[1]/following::textarea[1]").send_keys(Eadd)

1 个答案:

答案 0 :(得分:1)

这是您必须实现的逻辑。

<ItemGroup>

 <Reference Include="MyAssembly">

   <HintPath>path\to\MyAssembly.dll</HintPath>

 </Reference>
</ItemGroup>