好了,说到这里,DevTest大家应该有所理解了吧,现在就开始介绍怎么把自动化测试工具与测试管理做有效的结合。
我们知道理想的结果就是自动化测试完成后会自动把结果反映到我们的测试管理工具里,让测试管理工具能分析与预测出真实的结果,那咱们就来看看 DevTest是怎么实现这个理想的结果的吧。
如果用一句话来说的话,DevTest是通过提供强大的API的方式来解决这一问题的,当然真的实现还是需要有一定步骤的。
下面是一张大致的架构图:
通过API方式的集成,自动化测试工具就能与DevTest系统进行有效的沟通,我们可以将一个测试的任务与对应的自动化测试脚本或者任务作关联,一旦自动化测试完成通过调用API的方式就能迅速更新 DevTest 系统里相应的测试任务数据。
当然 DevTest 还能做得更好,当你在 DevTest 中通过测试用例生成测试任务以后,只要是发现是自动化的测试任务,就会自动开展测试,并且测试完成返回数据,如果再通过一定的二次开发,还能实现自动提交缺陷到关联的缺陷管理系统中去,完全是一条龙的服务。
目前市场上大部分自动化测试工具只能与特定的测试管理工具集成,而 DevTest通过 API的方式可以与绝大部分主流自动化测试工具做无缝集成,这个无疑是对于测试而言是极大高效的。
当然 API 不单单只是做集成时更新数据用的,你甚至可以通过一定的二次编程,直接将其他系统与 DevTest集成起来,比如说如果你们公司有多个平台,而你一般是在OA平台上操作的,切换到其他平台的话,你觉得比较麻烦,那你就可以通过API,直接在OA平台实现创建测试用例,开展测试计划,完成测试任务的 DevTest 的工作。
下面是一些 DevTest API主要支持的功能列表:
Function | Parameters | Description |
Init | $Int_server_host, $Int_server_port, $Doc_server_host, $Doc_server_port, $App_server_host, $App_server_port, $project_name, $project_type, $login_name, $debug_level |
|
Init2 | $Int_server_host, $Int_server_port, $Doc_server_host, $Doc_server_port, $App_server_host, $App_server_port, $project_ID, $project_type, $login_ID, $debug_level |
|
ReloadAllSettings |
|
|
CreateTestTask | $TemplateIDs, $EnvironmentOptions, $TestTaskFolderPath |
|
CreateTestTaskByPair | $TemplateEnvironment, $TestTaskFolderPath |
|
CreateChildTestTask | $ParentTaskID, $TemplateID, $Environment, $Fields, $FieldValues, $FieldTypes |
|
CreateTestTemplate | $TestTemplateFolderPath, $Fields, $FieldValues, $FieldTypes |
|
CreateTaskFolder | $ParentFolderPath, $Fields, $FieldValues, $FieldTypes, $TestCycleGroup, $SparseMatrixFile, $ref_MatrixMessage, $DefaultOwner |
|
UpdateTaskFolder | $FolderPath, $Fields, $FieldValues, $FieldTypes |
|
UpdateTaskFolderCoverage | $FolderPath, $SparseMatrixFile, $ref_MatrixMessage |
|
UpdateTestTaskInfo | $IssueID, $Fields, $FieldValues, $FieldTypes |
|
UpdateTemplateInfo | $IssueID, $Fields, $FieldValues, $FieldTypes |
|
GetTestTaskInfo | $FieldNames, $FieldTypes, $ConditionLabels, $ConditionTypes, $ConditionOps, $ConditionChoices |
|
GetTestTemplateInfo | $FieldNames, $FieldTypes, $ConditionLabels, $ConditionTypes, $ConditionOps, $ConditionChoices |
|
DeleteTestTask | $IssueID |
|
DeleteTemplate | $IssueID |
|
AssociateOneBug | $IssueID, $DevTrackProjectID, $BugID, $LinkTypeID, $LinkDescription |
|
InsertOneIssueNote | $IssueID, $NoteTitle, $NoteDescription, |
|
AddOneIssueAttachment | $IssueID, $NoteID, $AttachmentType, $FilePath, $FileName |
|
SetXMLEncoding | $xml_encoding |
|
MoveTestTask | $TaskIDs, $TestTaskFolder |
|
CopyTestTask | $TaskIDs, $TestTaskFolder |
|
CheckTemplateByEnv | $TemplateID, $EnvOptions |
|
GetTemplateByEnv | $TemplateFolder, $EnvOptions, $ActiveOnly |
|
GetTemplateByEnvEx | $TemplateFolderEnv, $ActiveOnly |
|
(未完待续)