2015-11-03 74 views
0

我有一個相對較大的Web應用程序是用AngularJS編寫的。我們的自動化使用Ranorex來運行BDD測試。有效識別元素 - 使用Ranorex的AngularJS自動化

我們在如何啓用Ranorex測試來有效地查找UI元素方面處於不斷的困境。目前我們主要使用它的自定義屬性testid(例如<div testid="done_btn">),但是在某些情況下,它的性能很差,不知道是因爲查詢XPath沒有優化或其他一些Ranorex配置。

使用id屬性的方式更快,但它不適合用於自動化。此外,保持它的獨特性可能需要在某些情況下進行編碼(例如,使用ng-repeat時)。

僅僅爲了自動化目的而使用id好還是壞習慣?爲什麼?

任何使Ranorex與自定義屬性(如testid)有所不同的方法都會使其更快找到?我已閱讀Ranorex Weight Rule,但無法找到定義自定義屬性的方法。

回答

2

快速回答:是!使用Id的。

我實際上並不熟悉您面臨的困境。請您進一步解釋不想使用id-s背後的推理。

如果您在某些情況下遇到與id不相關的問題,可以將不同元素組合到路徑中(例如「@ id ='save_btn'和@ innerText ='Save'」)。

通常情況下,如果您可以提高自動化的速度和穩定性,而不需要視覺或功能支出 - 那就做。

+0

一般來說,我們認爲使用'id',這是一個具有含義的屬性,屬於HTML規範的一部分,僅用於自動化,可能不是最好的想法,所以我們更喜歡使用自定義屬性。但正如所寫,這表現出糟糕的表現。謝謝 :) – Haji