我想了解更多有关如何使用Selenium IDE和RC创建良好的自动化测试的信息。有没有人有兴趣分享信息。或讨论这个?特别适用于:
1)组织UI测试的好方法是什么?现在我正在通过NUnit执行这些测试,并按照字母名称的顺序执行测试。有没有更好的办法。 (我用C#而不是java编写selenium脚本)
2)结果如何记录?
3)模块化Selenium RC测试?我在这里遇到了问题。由于我通过NUnit执行测试,我能想到的唯一方法是为测试提供ID,以便它们以正确的顺序运行。另外,我必须在textfixture类中一个接一个地编写所有测试。又有没有更好的方法?我尝试创建其他文件但是当我在那里创建测试并选择它们在NUnit中运行时,看起来selenium服务器甚至都没有启动。
4)自动化测试的最佳实践是什么?任何指向任何网站/书籍等的指针?
这些似乎很简单,但我花了几周的时间试图想出更好的方法,所以如果有人愿意提供建议或意见,我会非常感激!
谢谢!
答案 0 :(得分:8)
我已在下面为您解答了每个问题。
测试不应该与他们运行的顺序有关。如果你开始担心,你将开始引入测试的片状。如果您必须在每次测试时登录,那么如果您需要在测试期间注册一些用户,请执行此操作。测试应始终能够自行运行。
Nunit将其结果记录在XML文件中。这将有一个传递列表并失败,通常几乎所有连续的
请参阅我对Best Practices for modularizing Selenium RC test scripts
答案 1 :(得分:1)
如果您的愿望是使用Selenium,那么我建议改为使用TestPlan前端而不是其他语言。除了特定于域的语言之外,它还提供了很好的测试用例管理。您可以将测试组织成一个漂亮的层次结构,它将执行所有测试并报告结果。
它负责启动Selenium的许多细节,并解决了RC API中的许多困难。
答案 2 :(得分:1)
我刚刚经历过这个。在模块化和有用的工具方面。我认为,与简单地模块化硒RC脚本相比,更多地考虑构建灵活,维护良好的自动化ui测试框架非常重要。 Selenium 2: Testing Tools Begginner's Guide是了解如何开始构建良好测试框架的良好开端。在失败2-3次获得自动化测试框架后,我在(页面对象模式)[https://code.google.com/p/selenium/wiki/PageObjects]上获得了很大的成功。在进程方面,我发现最好从编写代码开始(你正在编写测试,因此它应该很容易测试),但是随着模式和结构的开始积累,使用优秀的OOP进行积极的重构。我还建议How Google Tests Software一般是软件质量保证的动机,组织层面的良好测试实践,以及何时何时不使用自动化。