Assertion určuje stav aplikace, zda je stejný, co očekáváme, nebo ne. Pokud aserce selže, testovací případ selže a zastaví provádění.
Chcete-li použít Assertion ve webovém ovladači, musíte si stáhnout soubor jar Testng a přidat jej do Eclipse. Stáhněte si soubor Testng jar z níže uvedeného odkazu:
https://mvnrepository.com/artifact/org.testng/testng/6.7Existují dva typy tvrzení:
- Tvrdé tvrzení
- Měkké tvrzení
Tvrdé tvrzení
Tvrdé tvrzení je tvrzení, které hází AssertException když testovací případ selže. V případě Hard Assertion můžete chybu vyřešit pomocí catch bloku jako java výjimky. Předpokládejme, že máme dva testovací případy v sadě. První testovací případ v sadě má aserci, která selže, a pokud chceme spustit druhý případ v sadě, pak musíme zvládnout chybu aserce. Tvrdé tvrzení obsahuje následující metody:
- AssertEquals
- AssertNotEquals
- AssertTrue
- AssertFalse
- AssertNull
- AssertNotNull
AssertFalse()
Assertion ověřuje booleovskou hodnotu vrácenou podmínkou. Pokud je logická hodnota nepravdivá, pak aserce projde testovacím případem, a pokud je logická hodnota pravdivá, pak aserce přeruší testovací případ pomocí výjimky. Syntaxe metody AssertFalse() je uvedena níže:
Assert.AssertFalse(condition);
Pojďme to pochopit na příkladu:
výběr řazení
package mypack; import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver','C:\work\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.navigate().to('https://www.spicejet.com/'); Assert.assertFalse(driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).isSelected()); System.out.println(driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).isSelected()); } }
Ve výše uvedeném kódu obsahuje Assert.assertFalse() podmínku, která vrací hodnotu false. Proto projde testovacím případem.
Výstup na konzole
package mypack; import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver','C:\work\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.navigate().to('https://www.spicejet.com/'); Assert.assertFalse(true); System.out.println(driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).isSelected()); }}
Ve výše uvedeném kódu metoda Assert.assertFalse() obsahuje podmínku true. Proto tvrzení selže, což znamená, že testovací případ je také neúspěšný. Selhání tvrzení zastaví provádění na základě výjimky.
Výstup na konzole
AssertTrue()
Assertion ověřuje booleovskou hodnotu vrácenou podmínkou. Pokud je logická hodnota pravdivá, pak aserce projde testovacím případem, a pokud je logická hodnota nepravdivá, pak aserce zruší testovací případ pomocí výjimky. Syntaxe metody AssertTrue() je uvedena níže:
Assert.AssertTrue(condition);
Pojďme to pochopit na příkladu.
globální var v js
package mypack; import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver','C:\work\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.navigate().to('https://www.spicejet.com/'); driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).click(); Assert.assertTrue(driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).isSelected()); System.out.println(driver.findElement(By.cssSelector('input[id*='SeniorCitizenDiscount']')).isSelected()); } }
Ve výše uvedeném kódu driver.findElement(By.cssSelector('input[id*='Sleva pro seniory']')).click(); Toto prohlášení se používá k výběru pole 'Senior Citizen'. V dalším prohlášení používáme aserci ke kontrole, zda testovací případ selže nebo projde. Parametr uvnitř metody Assert.assertTrue() vrací hodnotu true, takže testovací případ prošel.
Výstup
java pole
Výstup na konzole
AssertEquals()
AssertEquals() je metoda používaná k porovnání skutečných a očekávaných výsledků. Pokud jsou skutečné i očekávané výsledky stejné, pak tvrzení projde bez výjimky a testovací případ je označen jako „úspěšný“. Pokud skutečné a očekávané výsledky nejsou stejné, pak tvrzení selže s výjimkou a testovací případ je označen jako „neúspěšný“. Syntaxe metody AssertEquals() je uvedena níže:
Assert.assertEquals(actual,expected);
Pojďme to pochopit na příkladu.
package mypack; import org.junit.Assert; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub System.setProperty('webdriver.chrome.driver','C:\work\chromedriver.exe'); WebDriver driver = new ChromeDriver(); driver.navigate().to('https://www.spicejet.com/'); Assert.assertEquals('5Adult',driver.findElement(By.id('divpaxinfo')).getText()); System.out.println(driver.findElement(By.id('divpaxinfo')).getText()); }}
Výstup na konzole
AssertNotEquals()
Je opakem funkce AssertNotEquals() metoda. AssertNotEquals() je metoda používaná k porovnání skutečných a očekávaných výsledků. Pokud skutečné a očekávané výsledky nejsou stejné, pak tvrzení projde bez výjimky a testovací případ je označen jako „úspěšný“. Pokud jsou skutečné i očekávané výsledky stejné, pak tvrzení se nezdaří s výjimkou a testovací případ je označen jako „neúspěšný“. Syntaxe metody AssertNotEquals() je uvedena níže:
AssertNotEquals(actual,expected,message);
Pojďme to pochopit na příkladu.
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub Assert.assertNotEquals('Hello', 'How are you'); System.out.println('Hello...This is javaTpoint'); } }
Ve výše uvedeném kódu se skutečný řetězec, tj. Hello, nerovná očekávanému řetězci, tj. Jak se máš. Proto tvrzení projde testovacím případem. Tím se provede další příkaz a další příkaz je System.out.println('Dobrý den...Toto je javaTpoint'); .
Výstup
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub Assert.assertNotEquals('Hello', 'Hello'); System.out.println('Hello...This is javaTpoint'); }}
Výstup
AssertNull()
AssertNull() je metoda, která ověřuje, zda je objekt null nebo ne. Pokud má objekt hodnotu null, pak aserce projde testovacím případem a testovací případ je označen jako „prošel“, a pokud objekt není nulový, pak aserce testovací případ přeruší a testovací případ je označen jako „neprošel“. Syntaxe metody AssertNull() je uvedena níže:
vyhledávací algoritmy
Assert.assertNull(object);
Pojďme to pochopit na příkladu.
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { Assert.assertNull(null); System.out.println('Hello...This is javaTpoint'); }}
Výstup
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub Assert.assertNull(10); System.out.println('Hello World'); } }
Výstup
AssertNotNull()
AssertNotNull() je metoda, která ověřuje, zda je objekt prázdný nebo ne. Pokud objekt není nulový, pak aserce projde testovacím případem a testovací případ je označen jako 'prošel', a pokud je objekt null, pak aserce testovací případ přeruší a testovací případ je označen jako 'neúspěšný'. Syntaxe metody AssertNotNull() je uvedena níže:
Assert.assertNotNull(object);
Pojďme to pochopit na příkladu.
strojové učení pod dohledem
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub Assert.assertNotNull(10); System.out.println('C Language'); }}
Výstup
package mypack; import org.junit.Assert; public class Checkbox_test { public static void main(String[] args) { // TODO Auto-generated method stub Assert.assertNotNull(null); System.out.println('C Language'); } }
Výstup
SoftAssertion
Doposud jsme se dozvěděli o Hard Assertion ve webovém ovladači pomocí rámce Testng. V případě tvrdého tvrzení, pokud tvrzení selže, přeruší testovací případ, jinak pokračuje v provádění. Někdy chceme spustit celý skript, i když selže aserce. To v Hard Assertion není možné. Abychom tento problém překonali, musíme v testování použít měkké aserce.