În prezent, modific un script Java în Tester funcțional Rational și încerc să-i spun RFT să aștepte să apară un obiect cu un anumit set de proprietăți. Mai exact, vreau să aștept până va apărea un tabel cu numărul X de rânduri. Singura modalitate prin care am reușit să o fac până acum este să adaug un punct de verificare care doar verifică faptul că tabelul are un număr X de rânduri, dar nu am reușit să utilizez tipul de așteptare pentru tipul de obiect VP, deci acesta pare a fi puțin cam nebun. Există o modalitate mai bună de a face acest lucru?
Jeff
Nu, nu există o metodă de tip waitForProperty () încorporată, astfel încât să nu puteți face ceva simplu ca tableObject.waitForProperty ("rowCount", x);
Opțiunile dvs. sunt să utilizați un punct de verificare pe măsură ce faceți deja (dacă nu este rupt ...) sau să vă răsturnați propriul punct de sincronizare folosind o buclă do/while și metoda find ().
find ()
codeample mai jos presupune că doc
este un document html. Reglați acest lucru pentru a fi fereastra java de bază.
TestObject[] tables = doc.find(atDescendant(".rowCount", x), false);
Dacă nu sunteți familiarizați cu find ()
, faceți o căutare în referința API RFT din meniul de ajutor. find ()
va fi cel mai bun prieten în scripting RFT.
Puteți face un singur lucru ... puteți încerca să obțineți proprietatea și să verificați dacă obțineți valoarea dorită. Dacă nu, atunci iterați într-o buclă IF.
while (!flag) {
if (obj.getproperty(".text").equals("Desired Text")) {
flag = true
}
}