TestNG(Next Generation): it is
software which provides some facilities through annotations which make the
testing job easier as it is making some(testing) job more easy people generally
call it as TestNG Framework.
Navigation for downloading and
installing TestNG into eclipse:
Go to www.google.com
Type install TestNG click on search 
Click on first URL then copy the url “for eclipse
3.4 and above”
Open eclipse then click on help menu item
Select the option Install New Software 
Paste the URL at Work With field then select the
checkbox TestNG . 
Click on next….next
Click on finish.
Note: after
pasting the URL if you are not getting TestNG then follow the below steps 
Click on Add then in the Name field type TestNG
and in the location field paste the URL then click on Ok.
Now TestNG check box is available then click on
next…next
Click on finish.
Configuring the TestNG into eclipse:
Right click on project select Properties.
Click on Java Build Path
Click on Add Library
Click on TestNG then click on Next
Click in finish.
Note:
if the project is newly created then configure the selenium web driver also to
your project, the process of configuring selenium is mentioned in the above
pages.
package pack;
import org.testng.annotations.AfterClass;
import
org.testng.annotations.AfterMethod;
import
org.testng.annotations.BeforeClass;
import
org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
public class testng {
          @BeforeClass //these
are annotations availble in TestNG frame work
          public void invokeapplicationtest() {
                   System.out.println("application invoking
logic is here");
          }
          @AfterClass
          public void closeapplicationtest() {
                   System.out.println("application closing
logic is here");
          }
          @BeforeMethod
          public void login() {
                   System.out.println("logic for login is
here");
          }
          @AfterMethod
          public void logout()        {
                   System.out.println("logic for logout is
here...");
          }
          @Test
          public void withdraw()    {
                   System.out.println("logic for withdraw is
here....");
          } 
          @Test //test
case 
          public void balanceenqurytest()        {
                   System.out.println("logic for balance
enqury is here....");
          }         }
FACEBOOK
public class testngfacebook {
          static WebDriver wd;
          @BeforeClass
          public void invoke()
          {
                   wd = new FirefoxDriver();
          }
          @AfterClass
          public void close()
          {
                   wd.close();
          }
          @BeforeMethod
          public void login() throws InterruptedException
          {
                   wd.get("https://www.facebook.com/");
                    wd.findElement(By.xpath(".//*[@id='email']")).sendKeys("akhilreddyhyd@gmail.com");
                   wd.findElement(By.xpath(".//*[@id='pass']")).sendKeys("sachin143");
                   wd.findElement(By.xpath(".//*[@id='u_0_n']")).click();
                   Thread.sleep(5000l);
          }
          @AfterMethod
          public void logout()
          {
                   wd.findElement(By.xpath(".//*[@id='userNavigationLabel']")).click();
                   wd.findElement(By.xpath(".//*[@id='logout_form']/label")).click();
          }
@Test 
public void manish()
{
          wd.findElement(By.xpath(".//*[@id='blueBarNAXAnchor']/div[1]/div/div/div[1]/ul/li[1]/a/span")).click();
          }
          @Test
          public void home()
          {
                   wd.findElement(By.xpath(".//*[@id='u_0_g']/a")).click();
          }
}
Redbus with property file
WebDriver wd;
    @BeforeClass
    public void invoke()
    {
          wd= new
FirefoxDriver();
    }
    @AfterClass
    public void close()
    {
         wd.close();
    }
    @BeforeMethod
    public void login() throws
InterruptedException, IOException
    {
         Properties p=new Properties();
         FileInputStream fis=new
FileInputStream("C:\\Documents and
Settings\\akki\\workspaceaaaa\\frame\\src\\akki");
         p.load(fis);
         wd.get("http:redbus.in");
         wd.findElement(By.xpath(".//*[@id='signInLink']")).click();
        wd.findElement(By.id(p.getProperty("a"))).sendKeys("yaminireddy24041982@gmail.com");
        wd.findElement(By.id(p.getProperty("b"))).sendKeys("yamini");
         wd.findElement(By.id(p.getProperty("c"))).click();
         Thread.sleep(5000l);
    }
         @AfterMethod
         public void logout()
         {
             wd.findElement(By.xpath(".//*[@id='signOutLink']")).click();
         }   
    @Test 
    public void buses()
    {
        wd.findElement(By.xpath(".//*[@id='wrapper1']/header/div[2]/div/div[1]/a[1]")).click();
        wd.findElement(By.xpath(".//*[@id='txtSource']")).sendKeys("hyderabad");
        wd.findElement(By.xpath(".//*[@id='txtDestination']")).sendKeys("kadapa");
        wd.findElement(By.xpath(".//*[@id='txtOnwardCalendar']")).click();
        wd.findElement(By.xpath(".//*[@id='rbcal_txtOnwardCalendar']/table[1]/tbody/tr[6]/td[6]")).click();
        wd.findElement(By.xpath(".//*[@id='txtReturnCalendar']")).click();
        wd.findElement(By.xpath(".//*[@id='rbcal_txtReturnCalendar']/table[2]/tbody/tr[7]/td[4]")).click();
         wd.findElement(By.xpath(".//*[@id='searchBtn']")).click();
    }
         @Test
         public void hotels()
         {
             wd.findElement(By.xpath(".//*[@id='ctl00_hotelDiv']")).click();
             wd.findElement(By.xpath(".//*[@id='txtSource']")).sendKeys("mumbai");
             wd.findElement(By.xpath(".//*[@id='txtOnwardCalendar']")).click();
             wd.findElement(By.xpath(".//*[@id='rbcal_txtOnwardCalendar']/table[1]/tbody/tr[6]/td[6]")).click();
             wd.findElement(By.xpath(".//*[@id='txtReturnCalendar']")).click();
             wd.findElement(By.xpath(".//*[@id='rbcal_txtReturnCalendar']/table[1]/tbody/tr[7]/td[2]")).click();
             wd.findElement(By.xpath(".//*[@id='searchBtn']")).click();
         }
}
REDBUS
static WebDriver wd;
          @BeforeClass
          public void invoke()
          {
                   wd = new FirefoxDriver();
          }
          @AfterClass
          public void close()
          {
                   wd.close();
          }
          @BeforeMethod
          public void login() throws InterruptedException
          {
                   wd.get("http:redbus.in");
                   wd.findElement(By.xpath(".//*[@id='signInLink']")).click();
                    wd.findElement(By.xpath(".//*[@id='username']")).sendKeys("yaminireddy24041982@gmail.com");
                   wd.findElement(By.xpath(".//*[@id='password']")).sendKeys("yamini");
                   wd.findElement(By.xpath(".//*[@id='signInBtn']")).click();
                   Thread.sleep(5000l);
          }
                   @AfterMethod
                   public void logout()
                   {
                             wd.findElement(By.xpath(".//*[@id='signOutLink']")).click();
                   }         
          @Test 
          public void buses()
          {
                    wd.findElement(By.xpath(".//*[@id='wrapper1']/header/div[2]/div/div[1]/a[1]")).click();
                   wd.findElement(By.xpath(".//*[@id='txtSource']")).sendKeys("hyderabad");
                   wd.findElement(By.xpath(".//*[@id='txtDestination']")).sendKeys("kadapa");
                   wd.findElement(By.xpath(".//*[@id='txtOnwardCalendar']")).click();
                    wd.findElement(By.xpath(".//*[@id='rbcal_txtOnwardCalendar']/table[1]/tbody/tr[6]/td[6]")).click();
                   wd.findElement(By.xpath(".//*[@id='txtReturnCalendar']")).click();
                    wd.findElement(By.xpath(".//*[@id='rbcal_txtReturnCalendar']/table[2]/tbody/tr[7]/td[4]")).click();
                   wd.findElement(By.xpath(".//*[@id='searchBtn']")).click();
          }
                   @Test
                   public void hotels()
                   {
                             wd.findElement(By.xpath(".//*[@id='wrapper1']/header/div[2]/div/div[1]/a[2]/span")).click();
                             wd.findElement(By.xpath(".//*[@id='txtSource']")).sendKeys("mumbai");
                             wd.findElement(By.xpath(".//*[@id='txtOnwardCalendar']")).click();
                             wd.findElement(By.xpath(".//*[@id='rbcal_txtOnwardCalendar']/table[1]/tbody/tr[6]/td[6]")).click();
                             wd.findElement(By.xpath(".//*[@id='txtReturnCalendar']")).click();
                             wd.findElement(By.xpath(".//*[@id='rbcal_txtReturnCalendar']/table[1]/tbody/tr[7]/td[2]")).click();
                             wd.findElement(By.xpath(".//*[@id='searchBtn']")).click();
                   }
}
REDIAL.IN
          @BeforeClass
          public void invoke()
          {
                   wd = new FirefoxDriver();
          }
          @AfterClass
          public void close()
          {
                   wd.close();
          }
          @BeforeMethod
          public void login() 
          {
                   wd.get("http:dial.redial.in");
          wd.findElement(By.xpath(".//*[@id='warp']/div[2]/div/div/form/ol/li[1]/input")).sendKeys("SSSS");
          wd.findElement(By.xpath(".//*[@id='warp']/div[2]/div/div/form/ol/li[2]/input")).sendKeys("SSSSSSSS");
          wd.findElement(By.xpath(".//*[@id='warp']/div[2]/div/div/form/ol/li[3]/input[2]")).click();
}
          @AfterMethod
          public void logout()
          {
                   wd.findElement(By.xpath(".//*[@id='warp']/span/a")).click();
          }
          @Test
          public void sshistory() throws InterruptedException
          {
                   wd.findElement(By.xpath("html/body/div[1]/div[2]/ul/a[7]/li")).click();
                   wd.findElement(By.xpath(".//*[@id='form']/ol/li[2]/input")).sendKeys("Shaik Ahmed");
                   wd.findElement(By.xpath(".//*[@id='form']/ol/li[6]/a/input")).click();
                   Thread.sleep(4000l);
          }
          @Test
          public void msms()
          {
                   wd.findElement(By.xpath("html/body/div[2]/div[2]/ul/a[2]/li")).click();
                    wd.findElement(By.xpath(".//*[@id='warp']/div[4]/div[2]/table/tbody/tr[7]/td[3]/input")).click();
          }
Note:
 We no need
to have main() method in our class because TestNG is going to take care about
it.
It is new and famous framework having more no of
annotations.
Order of Execution is based on the annotations but
not in the order in which we have written the code.
More powerful reports will be generated compared
to JUnit.
JUnit and TestNG both are almost same difference
is at annotations.
In JUnit @BeforeClass and @AfterClass annotation’s
methods must be static but in TestNG no need be static methods.
In JUnit @Before and @After annotations are
available but in TestNG we have @BeforeMethod and @AfterMethod
Ignoring or skipping test cases while executing:
In JUnit: we need to write @Ignore before @Test to
skip that particular test.
E
g.:
 @Ignore
          @Test //test
case 
          public void
balanceenqurytest()        {
          System.out.println("logic
for balance enqury is here....");
          }         
In TestNG: to skip any test, in TestNG we need to
write (enabled=false) along with @Test
E g.: 
@Test(enabled=false)
          public void
withdraw()    {
          System.out.println("logic
for withdraw is here....");
          }
No comments:
Post a Comment