关于项目自动化测试架构的改良计划 - 分离出动作指令信息
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,但是,我们这些动作指令信息毕竟是让测试用例数据的设计者告诉Engine怎样修改原始数据集合的,所以我们必须把这些信息分离出来,但是刚才一步骤,已经把这些片断移除了,那么怎么把这些信息拿到呢?很简单,不
千家信息网最后更新 2025年12月02日关于项目自动化测试架构的改良计划 - 分离出动作指令信息
但是,我们这些动作指令信息毕竟是让测试用例数据的设计者告诉Engine怎样修改原始数据集合的,所以我们必须把这些信息分离出来,但是刚才一步骤,已经把这些片断移除了,那么怎么把这些信息拿到呢?很简单,不是我们有原始数据么,所以我们就可以对于原始数据的xml字符串,一个testcase,一个testcase的吧这些动作指令解析出来并且存放在相应的Value Object 列表中,以后我们只要根据这些列表中提供的信息就可以正确的对于原来的数据集合进行操作了。
分离信息的类叫XMLModifyInfoExtractor,它负责分离动作:
代码如下:
/** * extract all the modification information and store to member fields. * @param filePath * @throws Exception */ public void extractModifyInfo(String filePath) throws Exception{ SAXReader reader = new SAXReader(); Document document = reader.read(new File(filePath)); Element rootElement = document.getRootElement(); String testcaseElementPathValue; Element addElements; Element addElementPath; String addElementPathValue; Element addElementValue; String addElementValueValue; Element updateElements; Element updateElementPath; String updateElementPathValue; Element updateElementValue; String updateElementValueValue; Element removeElements; Element removeElementPath; String removeElementPathValue; //first ,get all the element List testcaseElementList = rootElement.elements("test_case"); for(Element testcaseElement : testcaseElementList){ testcaseElementPathValue = testcaseElement.getUniquePath(); //get part from the addElements= testcaseElement.element("add_elements"); if(addElements!=null){ //traverse the to get a seris of List addElementList = addElements.elements("add_element"); for(Element addElement : addElementList){ //extract the information from addElementPath = addElement.element("path"); addElementPathValue = addElementPath.getTextTrim(); //extract the information from addElementValue = addElement.element("value"); String xmlValue=addElementValue.asXML(); //remove the and part from this xml addElementValueValue=xmlValue.replace("","").replace(" ",""); addElementInfoList.add (new AddElement(testcaseElementPathValue,addElementPathValue,addElementValueValue)); } } //get part from the updateElements= testcaseElement.element("update_elements"); if(updateElements!=null){ //traverse the to get a seris of List updateElementList = updateElements.elements("update_element"); for(Element updateElement : updateElementList){ //extract the information from updateElementPath = updateElement.element("path"); updateElementPathValue = updateElementPath.getTextTrim(); //extract the information from updateElementValue = updateElement.element("value"); updateElementValueValue=updateElementValue.getTextTrim(); updateElementInfoList.add (new UpdateElement(testcaseElementPathValue,updateElementPathValue,updateElementValueValue)); } } //get part from the removeElements= testcaseElement.element("remove_elements"); if(removeElements != null){ //traverse the to get a seris of List removeElementList = removeElements.elements("remove_element"); for(Element removeElement : removeElementList){ //extract the information from removeElementPath = removeElement.element("path"); removeElementPathValue = removeElementPath.getTextTrim(); removeElementInfoList.add(new RemoveElement(testcaseElementPathValue,removeElementPathValue)); } } } } 现在经过上述3步骤之后,我们的代码中所有的动作序列的执行内容都被存放在相应变量中了。
信息
数据
动作
原始
指令
代码
步骤
测试
内容
变量
字符
字符串
序列
片断
设计者
设计
架构
项目
自动化
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国的网络安全组织
长春市网络安全处
做兼职的软件开发
网站数据库ip一般放在哪
java轻型数据库框架
网络安全介绍和防备
网络安全班会活动设计方案
ip登录服务器
数据库连接池最大值如何计算
工业领域常用数据库类型
软件开发综合实践
2022网络安全有关的事件
服务器互相同步文件
网络技术文件资料
湖北惠普服务器虚拟化优化服务器
双11网络安全团队新闻
网络安全技术监控
宝山区智能网络技术创造辉煌
爱奇艺数据库怎么选择
太空网络安全部队
负责协调网络安全的部门是
四川应用软件开发排行
网信河北网络安全
安卓服务器怎么发送信息
怎么对比不同表格的数据库
构建无损网络技术
代替hana数据库
网络安全管理师报名时间
程序员都是软件开发吗
忻州学校触控拍照软件开发公司