2012-02-24 60 views
0

背景多线程 - 质谱测试 - 数据驱动测试

我在其中有一个模板XML“MSTEST”编写的测试套件。

测试使用我的数据库中的数据填充此模板并将其发布到Web服务。当Web服务回复响应时,输入XML数据将与其响应中从服务接收到的XML数据进行比较,并将条目记录在文本文件中。

基本上这个测试具有一个入口点函数(它是与试验方法属性的唯一功能),其然后驱动在测试的所有其他功能

问题

的问题是,当测试需要很长时间。发布到Web服务并获取回复几乎需要2分钟为每个实例,我有100个这样的数据实例,所以至少需要大约200分钟才能完成。

我的老板让我看看这个测试的多线程,从而有望减少时间。

我还想指出的另一件事是我正在通过使用类似于this article中提到的DataSource属性的不同输入xml实例。不同之处在于我使用我的数据库中的视图来运行数据源属性而不是CSV文件。

任何想法如何多线程此测试和维护线程安全将不胜感激。 在此先感谢

+0

所以,一目了然你的问题是:** Web服务需要2分钟才能完成**。这是什么样的服务?你能加速这部分吗? – Groo 2012-02-24 22:10:58

+0

其QA服务器,并用于公司的每件事情,因此它的工作量很大,无法解决这个问题。 – user602182 2012-02-25 01:48:46

+0

问题是,如果工作量太大,我不认为你可以一次发送所有100个查询来加快速度。例如,如果这是针对索引配置较差的数据库的数据库查询,则每个查询都需要大量的cpu和磁盘时间。由于这些资源有限,您的查询将会延长100倍。 – Groo 2012-02-25 09:08:56

回答

0

TPL工作对我来说,只是要确保每一个变量是本地

0

请你详细说明如何执行“mstest”调用? 如果您正在手动执行测试执行,那么您可以非常轻松地添加多线程支持,并节省大量宝贵时间,正如您的老板所想的那样:)

我附加了此MSDN概述链接,其中还涵盖了基础知识用于线程安全: http://msdn.microsoft.com/en-us/library/ms173178.aspx

如果您使用的是IDE /测试应用程序的内置选项,那么您可能受限于其必须提供的功能。

等待您的答案。

+0

抱歉,我不太明白“你如何执行呼叫”mstest“?”你的意思是什么? – user602182 2012-02-25 01:50:00