51Testing软件测试论坛
标题:
selenium---高手看过来(关于人为控制用例失败和 打印生成日志报告的问题)---------
[打印本页]
作者:
肖欢伟
时间:
2011-1-21 14:53
标题:
selenium---高手看过来(关于人为控制用例失败和 打印生成日志报告的问题)---------
本帖最后由 肖欢伟 于 2011-1-21 15:11 编辑
现在正在用selenium在做一个ASP写的Web项目。自动化用例是写在VS2008里面的。
现在已经做成命令行的批处理了。在命令行窗口可以清楚的看到用例的执行成功或失败。现在被老大挑出个很重要的问题(急急。。)
问题
:例如:增加一条数据AA,我就是做了增加,保证用例执行通过。老大说不行,必须返回到显示页面里去找这个AA,如果找到则算成功,如果没有找到就是失败(即使用例执行成功),
现在问题是怎样控制如果没有找到让用例就执行失败(即在命令行窗口显示的是不通过的)。。。。。
不会怎么控制让一个执行通过的用例变为不通过
。。
。求救!
(老大说光用例通过不行,用例通过不代表功能就一定能通过。华为的BOSS真厉害)
问题2
接上面:
还有就是是如果没有找到,就是失败,要在用例执行完后能打印或生成报告。是否能做到?
作者:
肖欢伟
时间:
2011-1-21 15:00
本帖最后由 肖欢伟 于 2011-1-21 15:10 编辑
还有删除
:删除一个名字为 DD的用户,我目前就是做了删除,保证用例执行通过。
按照老大的意思,
必须返回再去查询一遍, 查不到才算用例通过,如果查到了则证明失败(只是用例执行通过而已)这是就要人为的控制让此用例执行结果是不通过的,
我目前所作的只是保证了用例的跑起来,向此题,如果我查询到了(就是没有删除掉喽),
但我这个用例执行结果还是顺利的通过的,此时就要人为的控制让用例不通过。
不会怎么控制让一个执行通过的用例变为不通过
跪求。。。。。。。
作者:
robin.von
时间:
2011-1-24 14:30
楼主应该不是做测试的吧!
另外,你用的是selenium IDE 还是RC?为什么不通过的用例要在命令行窗口显示结果,而不是发出Report?
selenium中都有类似verifyElementPresent或者isElementPresent这样的指令,用XPATH定位元素,应该可以满足要求。
作者:
肖欢伟
时间:
2011-1-24 14:52
回复
3#
robin.von
我是在做测试呢,外包在华为,这边的老大要求做成批处理。
我现在就差最后比较这一步了,不会怎么比较。今天看了上selenium的官方命令行。好像有比较的命令
,好像就是这些吧。不过我看不懂不会用。下面就是我复制过来的。求救。
-------------------------------------------------------------------------------------
三、 Assertions
允许用户去检查当前状态。两种模式: Assert 和 Verify, 当Assert失败,则退出测试;当Verify失败,测试会继续运行。
assertAttribute(.{}elementLocator@attributeName.{}, ValuePattern)
检查当前指定元素的属性的值
verifyAttribute txt1@class bigAndBlod
assertAttribute document.images[0]@alt alt-text
verifyAttribute //img[@id='foo']/alt alt-text
------------------------------------------------------------------------
# assertTextPresent, etc.
assertTextPresent(text)
assertTextNotPresent(text)
assertElementPresent(elementLocator)
verifyElementPresent submitButton
assertElementPresent //img[@alt='foo'] assertElementNotPresent(elementLocator)
# assertTable
assertTable(cellAddress, valuePattern)
- 检查table里的某个cell中的值
- cellAddress的语法是tableName.row.column, 注意行列序号都是从0开始
verifyTable myTable.1.6 Submitted
assertTable results0.2 13
作者:
robin.von
时间:
2011-1-24 15:04
看上面的情况,你用的应该是Selenium IDE吧。
用verifyAttribute,verifyText, verifyElementPresent这些指令都可以满足你的要求。
作者:
robin.von
时间:
2011-1-24 15:09
verifyAttribute //img[@id='foo']/alt alt-text
这种三段式的指令,第一段是指令,第二段是位置,第三段是值,
解释过来就是验证这个元素//img[@id='foo']/alt的值是否是alt-text,是的话就pass,否则就fail
作者:
肖欢伟
时间:
2011-1-25 19:17
回复
6#
robin.von
这个写成一句完整的c#语句, 哥们你会写不?
作者:
robin.von
时间:
2011-1-26 10:01
C#的我没用过,只用过JAVA的,C#中应该和JAVA类似,上面这个三段式的语句转换成JAVA语言应该类似于:
if (selenium.getAttribute("//img[@id='foo']/alt").equals("alt-text")){
}else{
}
作者:
肖欢伟
时间:
2011-1-26 10:37
回复
8#
robin.von
哦。我回去试试。感谢兄弟作答。 谢谢
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2