我可以使用Selenium IDE测试是否已将事务添加到数据库中吗?

时间:2014-06-03 12:38:02

标签: mysql selenium testing selenium-ide acceptance-testing

我正在使用Selenium IDE和Firefox进行测试。

我是否可以检查我网站上完成的交易是否已添加到我的数据库中,而无需使用localhost / phpmyadmin手动打开新选项卡并选择事务表?

2 个答案:

答案 0 :(得分:0)

您不能,也不应该使用Selenium IDE直接查看数据库。您可以而且应该间接测试交易发生的情况。

当您使用Selenium或任何其他浏览器控制或模拟测试工具时,您可以从用户的角度测试您的应用(编写功能'或&# 39;接受'测试)。用户不知道数据库中的内容 - 他们只知道他们在屏幕上看到了什么。因此,如果在您的网络应用程序中执行某些操作,则会在您的Web应用程序的某个页面上更改用户可以看到的内容(不是phpmyadmin,而是您正在测试的应用程序),请访问Selenium并测试它。

即使您的测试工具确实可以查看数据库,这也是正确的做法。

如果您的应用程序将某些信息写入数据库(从未向任何用户显示),例如审核信息,则使用Selenium IDE测试该信息的唯一方法是向您的Web应用程序添加页面(经过适当身份验证!)这样Selenium IDE就能看到它。如果您无法做到这一点,则需要一个可以查看数据库的测试工具。

带有Capybara Ruby gem的RSpec和Cucumber是测试工具的示例,它们既可以通过用户界面测试应用程序,也可以查看(甚至更改)数据库。

答案 1 :(得分:0)

虽然你可以使用它,但大多数人会建议你反对它。原因如下: -

  1. 可能不可靠。我的意思是它会导致许多假阴性,在你的测试结果中产生很多噪音。
  2. 非常紧密耦合。
  3. 你必须一直从Firefox运行它(我上次检查)你需要在任何你想要测试的地方使用Firefox。 [限制]
  4. 不能使用循环,条件等编程技巧
  5. 难以维护,因为不适合任何框架。 (或者可以吗?)
  6. ......还有一些......
  7. 我建议使用Selenium IDE为您遵循的基本步骤创建测试用例。将其导出为您喜欢的任何语言,然后创建历史记录。 :)

    和Dave上面说的一样,您可能希望探索专门针对数据库的其他工具。