Перейти к содержимому

Selenium IDE 3: стартовый уровень
онлайн, начало 19 апреля
Школа для начинающих тестировщиков
онлайн, начало 22 апреля
Тестирование REST API
онлайн, начало 22 апреля
Тестирование юзабилити (usability)
онлайн, начало 24 апреля
Фотография

Как задать порядок выполнения тестов в mocha (nodeJS)

mocha nodeJS

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 5

#1 barsa

barsa

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • Город:Новосибирск


Отправлено 20 Август 2015 - 05:21

Всем доброго дня!

 

Дано:

- ряд автотестов написанных на nodeJS, с использованием фреймворка mocha.

- тесты написаны таким образом, что одно api - один отдельный файл

- тесты зависимы друг от друга, т.е. необходимо выполнять их в строгой очередности

- один тест (соответственно, одно api) может использоваться в нескольких сьютах

 

Проблема:

- хочется запускать все сьюты одной командой. Для этого надо эти самые сьюты сформировать, т.е. задать порядок выполнения тестов. Или зависимости (как это можно сделать, например, в testNG). 

 

КАК?! Уже весь гугл исходила вдоль и поперек.

Кто-нибудь решал подобные проблемы?

 


  • 0

#2 Tishka

Tishka

    Постоянный участник

  • Members
  • PipPipPip
  • 211 сообщений
  • ФИО:Ахрамеев Антон

Отправлено 20 Август 2015 - 09:26

в TestNG можно 2мя способами

1. жесткая зависимостсь 

@Test
public void serverStartedOk() {}
 
@Test(dependsOnMethods = { "serverStartedOk" })
public void method1() {}

В таком случае если один упадет тест, то все зависимые тестовые методы не выполнятся

2. через priority

@Test(priority=1)
public void method1() {
		
}
 	
@Test(priority=2)
public void method2() {
		
}

В таком случаем выполнится тест с приоритетом 1, затем 2 и тд.

 

В вообще есть документация по TestNG

 

Так же есть видео от Алексея Баранцева по этой теме, правда тоже для TestNG


  • 0

#3 barsa

barsa

    Новый участник

  • Members
  • Pip
  • 14 сообщений
  • Город:Новосибирск


Отправлено 20 Август 2015 - 09:29

в TestNG можно 2мя способами

1. жесткая зависимостсь 

@Test
public void serverStartedOk() {}
 
@Test(dependsOnMethods = { "serverStartedOk" })
public void method1() {}

В таком случае если один упадет тест, то все зависимые тестовые методы не выполнятся

2. через priority

@Test(priority=1)
public void method1() {
		
}
 	
@Test(priority=2)
public void method2() {
		
}

В таком случаем выполнится тест с приоритетом 1, затем 2 и тд.

 

В вообще есть документация по TestNG

 

Так же есть видео от Алексея Баранцева по этой теме, правда тоже для TestNG

 

Спасибо, кэп.

Но во-первых nodeJS, а не Java.

Во-вторых может быть вы знаете, как впилить TestNG в mocha?


  • 0

#4 Tishka

Tishka

    Постоянный участник

  • Members
  • PipPipPip
  • 211 сообщений
  • ФИО:Ахрамеев Антон

Отправлено 20 Август 2015 - 09:36

 (как это можно сделать, например, в testNG). 

 

Вы просили "например" - я ответил.

 

Как запилите в mocha TestNG - дайте знать


  • 0

#5 220v

220v

    Активный участник

  • Members
  • PipPip
  • 107 сообщений
  • ФИО:Олег


Отправлено 20 Август 2015 - 18:51

примерно так можно в сьюты организовать
package.json: 

 "scripts": {
    "test": "npm run test-node && npm run test-browser",
    "test-node": "mocha -R spec ./test/node/index.js",
    "test-browser": "mocha-phantomjs ./test/browser/index.html"
}

Это с поисковика был пример.
Может и поможет:
1. Пронумеровать/переименовать фаилы в алфавитном порядке.
2. В конфиге mocha должны быть параметры по запуску...что-то можно объединить/исключить из запуска
3. Использование before/Each/after/Each
4. https://realguess.ne...order-in-mocha/

describe('Suite', function () {
  it('Foo', function () {
  });
  it('Bar', function () {
  });
});

5. http://mochajs.org/#getting-started

 -g, --grep <pattern>                    only run tests matching <pattern>
 -f, --fgrep <string>                    only run tests containing <string>

По последней ссылки много параметров.


У нас используется protractor + jasmine.


  • 0

#6 atimofeeva

atimofeeva

    Новый участник

  • Members
  • Pip
  • 2 сообщений
  • ФИО:Тимофеева Анна


Отправлено 21 Август 2015 - 00:39

примерно так можно в сьюты организовать
package.json: 

 "scripts": {
    "test": "npm run test-node && npm run test-browser",
    "test-node": "mocha -R spec ./test/node/index.js",
    "test-browser": "mocha-phantomjs ./test/browser/index.html"
}

Это с поисковика был пример.
Может и поможет:
1. Пронумеровать/переименовать фаилы в алфавитном порядке.
2. В конфиге mocha должны быть параметры по запуску...что-то можно объединить/исключить из запуска
3. Использование before/Each/after/Each
4. https://realguess.ne...order-in-mocha/

describe('Suite', function () {
  it('Foo', function () {
  });
  it('Bar', function () {
  });
});

5. http://mochajs.org/#getting-started

 -g, --grep <pattern>                    only run tests matching <pattern>
 -f, --fgrep <string>                    only run tests containing <string>

По последней ссылки много параметров.


У нас используется protractor + jasmine.

иь


  • 0


Программирование на С# для тестировщиков
онлайн
Автоматизатор мобильных приложений
онлайн
Selenium WebDriver: полное руководство
онлайн
Программирование на Python для тестировщиков
онлайн




Темы с аналогичным тегами mocha, nodeJS

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале