查询测试自动化框架

时间:2015-03-16 04:57:14

标签: perl

这是关于我一直面临的问题。虽然我找到了解决方案,但我真的希望对采取的方法有所了解。 我们有一个应用程序,它从主机接收消息,进行一些处理,然后将该消息传递给外部系统。此应用程序是用Java开发的,必须在Linux / Oracle和HP-NonS顶级Tandem / SQLMX OS / DB组合上运行。 我开发了一个用Perl编写的测试自动化框架。该脚本遍历目录(指定为此脚本的参数)并执行在这些目录下指定的测试用例。可以根据功能将测试用例组织到目录中。这种方法用于确保除了整个回归套件之外还可以检查特定功能。为了验证测试结果,脚本读取测试用例特定的输入文件,其中包含sql查询。 在Linux / Oracle中,Perl DBD / DBI接口用于查询Oracle数据库。 当这个自动化工具在Tandem中运行时,我发现SQLMX没有DBD / DBI接口。当我们联系惠普时,他们告诉我们在为SQLMX DB开发DBD / DBI接口之前还需要一段时间。 为了解决这个问题,我开发了一个小型Java应用程序,它接受数据库连接字符串,用户名,密码和各种其他参数。此Java应用程序现在负责测试用例验证功能。 我必须说它符合我们当前的需求,但有些东西告诉我(不知道是什么)所采用的方法并不是一个好方法,尽管现在我可以灵活地使用任何具有JDBC接口的DB运行这种自动化。 您能否就上述方法提供反馈并提出更好的解决方案? 提前致谢

1 个答案:

答案 0 :(得分:2)

除了一个部分之外,这个问题有点过于宽泛而无法发表评论。

如果项目是Java,请用Java编写测试。用不同的语言编写测试会增加各种复杂性。

您必须维护另一种编程语言和助理库。对于相同的操作,它们可能有不同的警告和错误,例如您在某个环境中缺少数据库驱动程序。

使用与项目不同的语言进行测试是在测试和开发之间形成的。开发人员不会对参与测试过程负责,因为他们甚至不懂语言。

使用不同语言编写的测试,他们无法利用已经完成的任何工作。他们必须重新编写基本代码来访问和使用数据和服务,使工作量增加一倍并使错误加倍。如果项目代码更改了API或数据结构,那么测试代码很容易失去同步,需要额外的维护麻烦。

Java已经拥有完善的测试工具来完成你想要的工作。运行特定测试与整个测试套件的整个结构内置于jUnit等测试套件中。

所以我可以强调一点,我写了Test :: More,我建议你在这里使用它。

相关问题