2016-02-24 26 views
0

我目前正在嘗試開發一個測試框架,並且目前已經使用硒web驅動程序測試了所有GUI。現在我想用我的框架來做功能測試。這將(1)包括在GUI上做一些工作(2)使用java jsch從命令行運行測試腳本。創建測試框架

所以我有一個基類,包括所有硒類的常用方法我有一個類爲每個頁面創建對象。然後,我根據每個頁面類的測試類運行我的測試。現在我想添加一個將運行我的腳本的jsch類。我有點困惑如何做到這一點,我認爲這是與我有限的Java知識有關。所以我會盡量解釋它像這樣

類A是我的基類

B類是對象類繼承來

C類是我的測試類初始化的元素和運行我的測試

(新增)class D是我的jsch類,它運行我的命令行腳本。

在我的測試類C中包含D類的最佳方法是什麼?我應該只在測試類中創建一個新對象。或者是有更好的更優雅的方法使用繼承多態性等。

+0

你也可以開始使用可用的硒框架之一,這些框架已經被證明有效的實現,所以你可以專注於你的AUT特定實現。我可以建議的框架是[QMetry自動化框架](http://stackoverflow.com/questions/36148345/selenium-java-browser-session-reuse/40400187#40400187)。在這裏你可以[查找文檔](https://qmetry.github.io/qaf/)。它支持由QAF-BDD和[cucumer小黃瓜]提供行爲驅動的創作(https://qmetry.github.io/qaf/latest/gherkin_client.html)(對於黃瓜用戶) – user861594

回答

1

我認爲你應該考慮在C中用新的D()創建D;或者使用依賴注入並在C的構造函數中注入D。

我不會使用多態性來引入類中的邏輯。

就我個人而言,當我使用組合而不是多態(繼承)時,我發現它更容易理解。