在我的selenium测试套件(html)中,我定义了第一个测试用例来初始化在下一个测试用例中调用的变量。
示例:
在第一个脚本中:
store|//div[@id="myfield"]|myvar
在我的第二个剧本中:
type|${myvar}|myvalue
但是当我启动测试运行器(来自maven)时,它会返回一个错误,告知找不到$ {myvar} 不使用存储的var中包含的值。
有什么建议吗?
Thans很多
答案 0 :(得分:1)
据我所知,在运行HTML套件时,您无法引用在不同测试中声明的变量。
您需要的是测试和/或套件“设置”和“拆解”功能。
在每次测试之前和之后进行测试设置和拆卸。套件设置和拆卸仅在套件运行之前和之后发生一次。
当您使用Maven时,我假设您的开发是使用Java,因此您可以使用JUnit
这包括测试和套件设置以及拆卸:
测试设置
http://kentbeck.github.com/junit/javadoc/latest/org/junit/Before.html
测试拆解
http://kentbeck.github.com/junit/javadoc/latest/org/junit/After.html
套件设置
http://kentbeck.github.com/junit/javadoc/latest/org/junit/BeforeClass.html
套房拆解
http://kentbeck.github.com/junit/javadoc/latest/org/junit/AfterClass.html
答案 1 :(得分:1)
也许你可以用cookies来存储变量?
createCookie在selenium中读取它你可能会使用javascrpt(getEval)
答案 2 :(得分:0)
我在Selenium IDE中创建了单独的测试,然后将它们分批测试套件
之后......当我运行它们时,测试1中存储的$ {variable_name}在测试2中工作正常。
达明
答案 3 :(得分:0)
当前版本的selenium测试运行器不会像IDE那样将变量从测试传递到测试。有一个javascript工作,请查看Nick G在http://jira.openqa.org/browse/SEL-605
上的帖子