Публикации по теме 'software-testing'


Настоящий единорог: данные для тестирования машинного обучения
Давайте будем честными здесь; вы были на той встрече, где все кивали головами в знак согласия с тем, что хороший, упорядоченный рабочий процесс разработки → постановка → производственный процесс будет своевременно обнаруживать проблемы, черт возьми, это даже звучит как функциональное программирование! Но затем неизбежно последующее совещание о том, как # $ & #! ( нулевой указатель мог остановить производство, когда та самая сборка прошла тесты. По моему опыту, это почти всегда..

Что такое разработка через тестирование (TDD)?
Разработка через тестирование (TDD) — это стиль программирования, в котором кодированию предшествует тестирование. Разработка через тестирование, или TDD, — это стиль программирования. TDD фокусируется на улучшении кода, сосредотачиваясь в первую очередь на написании тестов. Это противоположно типичной разработке программного обеспечения. В большинстве случаев сначала разрабатывается программное обеспечение, а тестовые сценарии создаются позже. Правила TDD Общий принцип состоит..

Mocking Concepts — Серия тестирования №2
Ментальная модель вокруг насмешек Что такое насмешка Добро пожаловать во вторую статью из нашей серии о тестировании программного обеспечения! В последней статье были рассмотрены статические, модульные, интеграционные и сквозные тесты . В этой статье мы рассмотрим: Что такое издеваться? Какие основные концепции стоят за этим? Когда издеваться, а когда не издеваться? Каковы наилучшие практики для насмешек? Мы не будем углубляться в поддельные данные, заглушки, драйверы,..

Насколько хорошо это работает? Профилирование в Haskell
Я уже говорил это раньше, но скажу еще раз. Как бы нам ни хотелось думать, что наш код на Haskell не работает только потому, что он компилируется. Вот почему у нас есть наборы тестов . Но даже если он проходит наши тестовые наборы, это не означает, что он работает так хорошо, как мог бы. Иногда мы понимаем, что написанный нами код недостаточно эффективен, поэтому нам приходится его улучшать. Но улучшение нашего кода иногда может быть похоже на выстрелы в темноте. Вы потратите много..

Проблемы с плагинами grunt-contrib-qunit/grunt-lib-phantomjs/phantomjs и замена их на grunt…
Для одного нашего front-end проекта я решил мигрировать на Grunt . Grunt — отличный таск-раннер для клиентских проектов на основе node.js/npm. Раньше у нас была некоторая инфраструктура для сборок и тестов. Поэтому весь наш код нужно перенести в инфраструктуру Grunt. К счастью, на http://gruntjs.com/plugins есть много крутых плагинов для Grunt. Плагин для Grunt — это просто модуль npm. Наши юнит-тесты используют QUnit. Запускаем их в браузере и под PhantomJS с помощью..

Общие ошибки программного обеспечения с записями
В предыдущем посте мы объяснили, что базовые типы данных имеют тенденцию группироваться вместе и формировать записи данных. Вот распространенные программные ошибки, связанные с записями. Этот пост соответствует курсу Black Box Software Testing Foundations (BBST), разработанному Ребеккой Фидлер, Джемом Канером и Джеймсом Бахом. Тестируемые приложения обычно сохраняют данные в базе данных. Данные хранятся в виде записей; например, пользователи приложения обычно имеют имя и фамилию,..

Инкапсуляция Компоненты, которые могут измениться
Некоторое время назад мне нужно было пройти обучение архитектору. Что касается этого тренинга, я очень мало согласился с тем, что утверждал тренер, но было несколько вещей, которые он указал на то, что мы действительно знали о концепциях, о которых я уже знал и практиковал… но его описание было кратким и точным. Это была «инкапсуляция волатильности». Я собираюсь потратить некоторое время, чтобы поговорить об этом сегодня. В больших программных системах или вообще в любом очень сложном..