Селен с TestNG

Я новичок в селене с TestNG. Было бы здорово, если бы вы мне ответили. Я пишу тестовые примеры для веб-приложения, которое будет создавать текстовые заметки. Для тестирования различных видов входных данных использовал @dataProvider. Поскольку у меня есть два варианта после ввода всех значений, то есть я могу сохранить или отменить создание заметок. Я использовал аннотацию @Optional, которая генерирует исключение. Не могли бы вы объяснить мне, можем ли мы использовать @dataprovider с опциональной аннотацией @. Я написал такой код.

@Test
public class CreateNotesTest extends BeginAndEndTest
{

@Test(dataProvider = "createNotes", dataProviderClass = CreateNotesTest.class)
public void createsNotes(String title,String content,String tags,@Optional("save") String action)
{
    WebDriver driver = getDriver();
    CreateNotes notes = new CreateNotes(driver);
    boolean status = notes.createNote(title, content, tags, action);
    if(action.equalsIgnoreCase("save") || action.equals(""))
        {
        Assert.assertEquals(status, true);
        }
    else
        Assert.assertEquals(status, false);

}
/**
 * 
 * @return dataProvider
 */
@DataProvider(name = "createNotes")
public static Object[][] getNotesData()
{
    return new Object[][]{{"test1","my family is my first priority","family"},{"","hello","greeting","cancel"}};
}

person geeth    schedule 30.10.2014    source источник


Ответы (1)


Насколько я знаю, вы не можете использовать @Optional с поставщиком данных, а только с @Parameters. Кроме того, при использовании с параметрами if(action.equalsIgnoreCase("save") || action.equals("")) вызовет исключение nullpointerexception, если действие равно null.

person niharika_neo    schedule 31.10.2014