亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于項目自動化測試架構的改良計劃 - 分離出動作指令信息

發布時間:2020-06-26 05:04:24 來源:網絡 閱讀:304 作者:charles_wang888 欄目:軟件技術


但是,我們這些動作指令信息畢竟是讓測試用例數據的設計者告訴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 <test_case> element
        List<Element> testcaseElementList = rootElement.elements("test_case");
        for(Element testcaseElement : testcaseElementList){
                 
            testcaseElementPathValue = testcaseElement.getUniquePath();
                 
            //get <add_elements> part from the <test_case>
            addElements= testcaseElement.element("add_elements");
            if(addElements!=null){
                     
            //traverse the <add_elements> to get a seris of <add_element>
            List<Element> addElementList = addElements.elements("add_element");
            for(Element addElement : addElementList){
                //extract the <path> information from <add_element>
                addElementPath = addElement.element("path");
                addElementPathValue = addElementPath.getTextTrim();
                //extract the <value> information from <add_element>
                addElementValue = addElement.element("value");
                     
                     
                String xmlValue=addElementValue.asXML();
                //remove the <value> and </value> part from this xml
                addElementValueValue=xmlValue.replace("<value>","").replace("</value>","");
                addElementInfoList.add
                (new AddElement(testcaseElementPathValue,addElementPathValue,addElementValueValue));
            }
                 
            }
                 
            //get <update_elements> part from the <test_case>
            updateElements= testcaseElement.element("update_elements");
            if(updateElements!=null){
                     
                 
            //traverse the <update_elements> to get a seris of <update_element>
            List<Element> updateElementList = updateElements.elements("update_element");
            for(Element updateElement : updateElementList){
                //extract the <path> information from <update_element>
                updateElementPath = updateElement.element("path");
                updateElementPathValue = updateElementPath.getTextTrim();
                //extract the <value> information from <update_element>
                updateElementValue = updateElement.element("value");
                updateElementValueValue=updateElementValue.getTextTrim();
                     
                updateElementInfoList.add
                (new UpdateElement(testcaseElementPathValue,updateElementPathValue,updateElementValueValue));
            }
                 
            }
                         
                 
            //get <remove_elements> part from the <test_case>
            removeElements= testcaseElement.element("remove_elements");
            if(removeElements != null){
                     
                 
            //traverse the <remove_elements> to get a seris of <remove_element>
            List<Element> removeElementList = removeElements.elements("remove_element");
            for(Element removeElement : removeElementList){
                //extract the <path> information from <remove_element>
                removeElementPath = removeElement.element("path");
                removeElementPathValue = removeElementPath.getTextTrim();
                     
                removeElementInfoList.add(new RemoveElement(testcaseElementPathValue,removeElementPathValue));
            }
                 
            }
        }
             
                         
    }


現在經過上述3步驟之后,我們的代碼中所有的動作序列的執行內容都被存放在相應變量中了。


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

闸北区| 赤壁市| 阜城县| 临湘市| 甘孜| 祥云县| 舟曲县| 同仁县| 尼勒克县| 西和县| 隆回县| 阿城市| 子长县| 长沙市| 无极县| 青川县| 临城县| 南召县| 巴林右旗| 阳江市| 太仆寺旗| 德安县| 璧山县| 莫力| 运城市| 瑞金市| 连平县| 攀枝花市| 临夏县| 武安市| 平泉县| 和顺县| 尚义县| 石嘴山市| 乐都县| 襄城县| 台州市| 健康| 噶尔县| 遂平县| 阿拉善右旗|