2016-08-26 6 views
1

私の問題では、IDに基づいてオブジェクトを見つけることができないように、ダイナミックに名前が付けられたチェックボックスを持っています(すでに私の開発者に感謝しています)。私は過去にQTPを使用しており、識別しやすい他のオブジェクトに対する相対的な位置に基づいてオブジェクトを選択することができました。この場合、説明付きのチェックボックスのリストがあります。チェックボックスの名前が変更されている間、その隣のリストのテキストは同じままです。セレン - ページ上の別のオブジェクトに対する相対位置が必要ですか?

オブジェクトAの左側のチェックボックスをクリックすると、次のようなことができますか?

申し訳ありませんが、これは多少曖昧ですが、私はSeleniumを初めて使用しています。必要なコードのすべての要素ではなく、出発点を探してください。ありがとう!

HTMLサンプル:

<div class="select-measures-table"> 
<div class="ng-scope" ng-if=" vm.isSearchDataLoaded == true"> 
<div class="ng-scope" ng-include="'measureGrid.html'"> 
<table class="table ng-scope" ng-show="vm.measures.length > 0"> 
<tbody> 
<tr class="ng-scope" ng-include="'measureRow.html'" ng-repeat="measure in vm.measures track by measure.ThisMeasureId | orderBy:'MeasureId'"> 
<tr class="ng-scope" ng-include="'measureRow.html'" ng-repeat="measure in vm.measures track by measure.ThisMeasureId | orderBy:'MeasureId'"> 
<tr class="ng-scope" ng-include="'measureRow.html'" ng-repeat="measure in vm.measures track by measure.ThisMeasureId | orderBy:'MeasureId'"> 
<tr class="ng-scope" ng-include="'measureRow.html'" ng-repeat="measure in vm.measures track by measure.ThisMeasureId | orderBy:'MeasureId'"> 
<tr class="ng-scope" ng-include="'measureRow.html'" ng-repeat="measure in vm.measures track by measure.ThisMeasureId | orderBy:'MeasureId'"> 
+0

はhtmlソースを共有しています....あるオブジェクトから別のオブジェクトへの移動を許可するxpathまたはcssセレクタを見ることができます... – Grasshopper

+0

テーブルのサンプルを追加しました –

答えて

1

あなたのHTMLコードを見た後、私はあなたがセレンが機能しない理由であるかもしれない角度JSアプリケーションをテストしていることがわかります。その場合は、JSテストを書くにはProtractor、C#テストを書くにはProtractor.Netを使用してください。

両方ともSeleniumの上に構築され、Angular SPAを扱うための構造を提供します。

+0

私はIDEを使用していますが、これはページ上の表であることを示します。ボックスをチェックすると、IDEは記録しません。しかし、ありがとう。 –

+0

@JamesCraigそれは驚くべきことですが、私は何かを記録していないことを見たことがありません。テーブルに関しては、それは問題ではありません。 – Gilles

+0

@JamesCraig私はAngular JSアプリケーションをテストしていたので、私は自分の答えを変更しました。 – Gilles

関連する問題