簡體   English   中英

GUI測試自動化腳本中的OOP

[英]OOP in gui testautomation scripts

我正在為Web GUI進行自動化測試。 這是一個很大的產品,因此設計一個好的軟件體系結構很重要。 首先,我決定將測試數據與測試邏輯隔離。 之后,我想以oop樣式構建類,這有助於在短時間內處理更改。

我有以下gui設計: 在此處輸入圖片說明

我認為我應該在額外的類中隔離菜單,導航和工具欄,因為因此只有一個地方可以處理更改。 我不知道這是否是處理它的最佳方法。 還有其他選擇要處理嗎?

PS:我正在使用Squish Gui測試自動化工具和python

您看過Django嗎? 編輯:我從第一段解釋說,OP將推出自己的oop gui Web框架。

最后,我在Web應用程序和測試邏輯之間使用了抽象層。 測試開發人員僅使用抽象類中的方法。 優點是測試開發人員無需了解Web應用程序的結構。

經過4周的工作,可以非常快速地創建和處理我們的測試。

我們所謂的“自動化設計”是使某些模塊自動化。 每個測試方案都是根據邏輯塊(子方案)構建的。 登錄,填寫表格1,填寫表格2,報告結果,關閉申請。 這些是我們自動化的項目,使用正確的參數集,您可以自動化所有方案。

自動化的方式也是個好主意(也已經做到了)。 每個部分也是一個塊。 可以調用每個塊,並使用正確的參數,測試人員可以創建場景Blok1(editbox1,“文本”; editbox2,“”)等。

在哪里考慮,您如何向功能測試人員表示? 他們會了解工作方式嗎? (有些測試人員甚至不懼怕XML ...因此,使其變得簡單。)

我所做的就是根據與它們相關的GUI區域將功能分組在一起。 例如,在您的示例中,您有4個主要部分。 如果使用“可選工具欄”部分,則可以為該部分定義一個單獨的功能組,並在該主要功能下添加所有子功能。

例如,在JavaScript中,您可以執行以下操作:

var OptionalToolbar = {
    clickButton:function(btn){
        //your code goes here
    },

    getButtonCount:function(){
        //your code goes here
    }
}

然后,您可以從測試用例中調用這些可重用函數。

OptionalToolbar.clickButton("Home");

這將使測試框架獨立於測試邏輯,並且當然會提高可維護性和可用性(功能按與它們相關的GUI區域進行邏輯分組)。

我一直在使用這種技術來構建我的測試框架功能,並且在過去的4年中被證明是成功的。 如果維護明確定義的功能層,則始終可以非常快速地適應更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM