0
我有3頁的對象:main.js,login.js和menu.js並假設他們的功能被命名爲相同的文件名,這是一系列的測試是否可以在沒有鏈接的單個測試中使用多個頁面對象?
- 主:主()
- 登錄:登錄()
- 菜單:菜單()
例如我已經中main.js以下
module.exports={
commands=[{
main:function(){
return this.click("@login")
}
}],
elements:{
login: {
locateStrategy:'xpath'
selector: ('//a[@name="Log in"]')
}
}
}
其中一個測試序列是main - > login - > menu。
我試過如下:
var main = client.page.main()
var login = client.page.login()
var menu=client.page.menu()
...
var ok=main.main()
if(!ok){
return ok
}else {
return login.login()&&menu.menu()
}
但不斷收到錯誤消息:
{ status: -1,
value:
{ error: 'invalid session id',
message: 'No active session with ID null',
stacktrace: '' },
errorStatus: 6,
error: '' }
如何在客戶端通過調用頁面對象改變了嗎? 和我的問題的任何合適的解決方案? 我檢查了Multiple page objects in one test case,但它對我的情況沒有什麼幫助,因爲我必須多次重複使用這些對象(不只是A-> B-> C,可能是A-> C-> B或A-> C)
爲什麼沒有這個鏈接有幫助?那麼代碼如何讓你無法在每次測試中以任何順序使用頁面對象? – JeffC
我想實現的就像'main.main(); login.login(); menu.menu();'沒有回調級別,但在同一個客戶端(瀏覽器) – Raymond
什麼是'main()在'var ok = main.main()'? –