Вы объявили имя переменной так же, как имя функции. Это вызывает ошибку. Измените имя переменной.
let upper = 10000 ;
let RandomNumber = getRandomNumber(upper) ;
let guess ;
let guessAttempts = 0 ;
function getRandomNumber(upper) {
return Math.floor(Math.random() * upper) + 1 ;
}
Я использую Селен с приложением направляющих, и я использую механизм приспособления, чтобы загрузить и разгрузить данные из тестовой базы данных. Это подобно подходу DbUnit, хотя я не разгружаю и перезагружаю между тестами из-за объема данных. (Это - что-то, что я продолжаю работать, все же.)
У нас есть веб-фронтэнд к стандартной программе восстановления базы данных. Первая вещь, которую делают наши тесты, восстановить "известную" начальную точку.
Укажите на веб-приложение на другой экземпляр базы данных, который можно вытереть, когда Вы сделаны с тестами. Затем у Вас будет база данных для осмотра после того, как тесты работали, если необходимо отладить, и можно просто сдуть все таблицы, когда Вы сделаны. Вы могли получить экспорт текущей базы данных и восстановить ее в Ваш новый экземпляр перед тестами, если Вы должны отобрать данные.
Согласитесь с другими ответами здесь. Я соединил проводом в Селене и тестах DBUnit к прошлым 3 проектам, я продолжил работать. На первом проекте мы попробовали ленивый подход, но очевидно он упал в "куче", таким образом, мы использовали DBUnit, и я не оглянулся назад.
Я понимаю, что Вы используете PHP, поэтому переведите DBUnit/JUnit в свои эквиваленты PHP.
Несколько точек:
Позвольте тестам селена 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 для данных тестов.
Избегайте ленивого подхода. Это бесполезно и в конечном счете приведет Вас к сбою. Посмотрите мой предыдущий ответ по этой теме в этом отдельном вопросе о StackOverflow.