Чистка данных после теста селена

Вы объявили имя переменной так же, как имя функции. Это вызывает ошибку. Измените имя переменной.

let upper = 10000 ;
let RandomNumber = getRandomNumber(upper) ;
let guess ;
let guessAttempts = 0 ;

function getRandomNumber(upper) {
    return Math.floor(Math.random() * upper) + 1 ;
}
5
задан Kindle Q 8 February 2017 в 09:08
поделиться

5 ответов

Я использую Селен с приложением направляющих, и я использую механизм приспособления, чтобы загрузить и разгрузить данные из тестовой базы данных. Это подобно подходу DbUnit, хотя я не разгружаю и перезагружаю между тестами из-за объема данных. (Это - что-то, что я продолжаю работать, все же.)

4
ответ дан 14 December 2019 в 13:47
поделиться

У нас есть веб-фронтэнд к стандартной программе восстановления базы данных. Первая вещь, которую делают наши тесты, восстановить "известную" начальную точку.

2
ответ дан 14 December 2019 в 13:47
поделиться

Укажите на веб-приложение на другой экземпляр базы данных, который можно вытереть, когда Вы сделаны с тестами. Затем у Вас будет база данных для осмотра после того, как тесты работали, если необходимо отладить, и можно просто сдуть все таблицы, когда Вы сделаны. Вы могли получить экспорт текущей базы данных и восстановить ее в Ваш новый экземпляр перед тестами, если Вы должны отобрать данные.

0
ответ дан 14 December 2019 в 13:47
поделиться

Согласитесь с другими ответами здесь. Я соединил проводом в Селене и тестах DBUnit к прошлым 3 проектам, я продолжил работать. На первом проекте мы попробовали ленивый подход, но очевидно он упал в "куче", таким образом, мы использовали DBUnit, и я не оглянулся назад.

Я понимаю, что Вы используете PHP, поэтому переведите DBUnit/JUnit в свои эквиваленты PHP.

Несколько точек:

  • Используйте как можно меньше данные. Со многим тестовым выполнением селена Вы хотите, чтобы загрузка DBUnit была максимально быстра. Так попытайтесь минимизировать объем данных, который Вы загружаете.
  • Только загрузите данные, которые изменяются. Часто можно пропустить таблицы, которые никогда не изменяются веб-приложением. Касательно таблиц данных и так далее. Однако Вы могли бы хотеть создать отдельный XML-файл DBUnit / резервное копирование дб для загрузки этих данных в случае, если Вы случайно теряете его.
  • Позвольте тестам селена JUnit выбрать, нужна ли им перезагрузка. Некоторые тесты Селена не изменят данных, таким образом, не будет никакого смысла, перезагружая базу данных после того, как они работают. В каждом из моих тестов селена я переопределяю/реализую метод для возврата желаемого поведения DBUnit.

    @Override защитил DBUnitRunConfig getDBUnitRunConfig () {

    return DBUnitRunConfig.RUN_ONCE_FOR_THIS_TEST_CASE;
    

    }

(Невозможно получить тот отрывок к формату правильно.), Где DBUnitRunConfig:

public enum DBUnitRunConfig {
    NONE, 
    RUN_IF_NOT_YET_RUN_IN_ANY_TEST_CASE, 
    RUN_ONCE_FOR_THIS_TEST_CASE, 
    RUN_FOR_EACH_TEST_IN_TEST_CASE
};

Это сокращает время, требуемое пройти через тесты. Селен включил суперкласс (или класс помощника) может затем работать или не работать, DBUnit для данных тестов.

0
ответ дан 14 December 2019 в 13:47
поделиться

Избегайте ленивого подхода. Это бесполезно и в конечном счете приведет Вас к сбою. Посмотрите мой предыдущий ответ по этой теме в этом отдельном вопросе о StackOverflow.

0
ответ дан 14 December 2019 в 13:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: