2017-08-02 82 views
0

我想每次單擊元素時都會執行一些操作。如何覆蓋CodeceptJS中的函數

所以,當我打電話單擊

I.click(locator); 

而不是調用webdriver的點擊功能的,我希望它叫我重寫我已經加入到steps_file.js

click(locator){ 

    // do something first 
    console.log('something'); 

    // finally click the element 
    this.helpers["WebDriverIO"].browser.click(locator); 
} 

我有2問題:

  1. 我的點擊功能被忽略。它仍然正常地點擊元素。我沒有看到任何日誌「東西」
  2. steps_file.js似乎沒有訪問助手。 this.helpers is undefined

回答

0

爲什麼你需要重寫標準函數?我認爲將會更容易和更有效,只需創建一個名爲「clickOn」的自定義步驟並使用它來代替「點擊」即可。在自定義步驟內您可以做任何你想做的事情。