| 
					
					
						Какой рейтинг вас больше интересует?
						
						
						
					 | 
						Главная /  Главные темы /  Тэг «phpunit» 
						
							
																																					Тестирование параллельных процессов   2017-04-25 09:07:47
										
										  + развернуть текст   сохранённая копия 
										  
Вы встречались с ошибками, которые возникают время от времени в продакшне, но никак не воспроизводятся локально? Бывает, изучаешь такой баг и вдруг понимаешь, что он проявляется только при одновременном параллельном выполнении скриптов. Изучив код, понимаешь как это исправить, чтобы такого больше не повторялось. Но на такое исправление хорошо бы написать тест…
 
В статье я расскажу о своем подходе к тестированию таких ситуаций. А также приведу несколько наглядных (и наверное даже классических) примеров багов, которые удобно протестировать с помощью этого подхода. Все примеры багов живые — то, что встречается в работе.
 
Забегая вперед сразу скажу, что в конце статьи будет ссылка на github, куда я выложил готовое решение, позволяющее тестировать параллельные консольные процессы легко и просто. 
 Читать дальше →
										 
										Тэги: deadlock , it-систем , php , phpunit , sql , вычисления , параллельное , параллельные , приложений , программирование , тестирование PHP-Дайджест № 102 – интересные новости, материалы и инструменты (1 – 12 февраля 2017)   2017-02-13 01:30:16
										
										  + развернуть текст   сохранённая копия 
										
Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы. 
Приятного чтения! 
 Читать дальше →
										 
										Тэги: group , laravel , php , phpunit , symfony , wordpress , yii , zfort , блог , веб-разработка , веб-сайтов , дайджест , компании , новости , подборка , разработка , ссылки Объединяем Code Coverage от PHPUnit и phpspec   2016-11-27 01:25:21
										 
										Сегодня та или иная библиотека на Github, у которой нет тестов, уже не воспринимается серьезно.  ... 
										
										+ развернуть текст   сохранённая копия 
										Сегодня та или иная библиотека на Github, у которой нет тестов, уже не воспринимается серьезно. Тесты помогают нам смело делать рефакторинг и быть уверенными, что модуль, класс или функция работают так, как это задумывалось. Они позволяют нам тестировать наш код на разных версиях PHP и выявлять ошибки заранее. Это гарант качества и стабильности вашего кода.
   
Стремиться к стопроцентному покрытию кода нет никакого смысла, однако понимать в среднем какой процент кода покрыт вашими тестами — хорошая метрика при непрерывном интегрировании.
 
Мы можем настроить оповещения при падении процента покрытия, например, ниже 50, можем добавлять автоматические комментарии от ботов в пул реквестах, показывать тенденцию изменения Code Coverage на графиках с течением времени и т.д.
   
Но что делать, если вы используете несколько библиотек для тестирования? Как получить общее покрытие кода? 
 Читать дальше →
										
										Тэги: code , codecov , coverage , php , phpspec , phpunit , simpleweek , testing , travis-ci , unit , блог , компании [Из песочницы] Настройка окружения для PHP разработчиков   2016-10-31 15:41:04
										 
										 ... >Xdebug, PHPUnit , и интеграцию ... 
										
										+ развернуть текст   сохранённая копия 
										В данной статье мы рассмотрим настройку окружения для PHP разработчиков  с использованием Vagrant , Docker , Xdebug , PHPUnit , и интеграцию с IDE PHPStorm . 
   +    Требования
Окружение должно развертываться на Windows, MacOS, LinuxУстановка должна быть максимально простойБыстрая работа с файловой системойИнтеграция с IDE PHPStormНесколько версии PHP интерпретаторов (5.6, 7.0) 
 Читать дальше →
										
										Тэги: docker , php , phpstorm , phpunit , vagrant , xdebug Тестирование рекурсии   2016-08-17 08:40:37
										
										 Есть пара весомых поводов не использовать рекурсию, но это не повод не использовать рекурсию  ... 
										+ развернуть текст   сохранённая копия
 
 
										Есть пара весомых поводов не использовать рекурсию, но это не повод не использовать рекурсию вообще. Программы, во-первых, создаются программистами для программистов, и лишь во-вторых — программистами для компьютеров. В итоге, некоторыми годными программами могут пользоваться неподготовленные люди. Рекурсия имеет одно безусловное преимущество перед итерацией — читабельность. Когда программист создает программы для себе подобных, рекурсия имеет право на существование до тех пор, пока не докажет обратного (т.е. — не будет запущена на компьютере и не поперхнется реальными данными). Тестирование — это, по сути, создание программ для программ, позволяющее программистам отодвигать порог непреодолимой сложности в разрабатываемых приложениях. Столкнувшись на днях с необходимостью написать юнит-тест для рекурсивного метода я был неприятно удивлен необходимостью мокировать сам тестируемый метод. Альтернатива — создавать такие входные данные, которые бы позволяли протестировать все ветки рекурсии в одном тестовом методе. В перспективе вырисовывалось не снижение сложности, а наоборот — ее увеличение. Порывшись в интернетах, я обнаружил кучу информации о том, чем нехороша рекурсия, массу советов, как перейти от рекурсии к итерации, но так и не нашел на русских формах того, что искал — как тестировать рекурсивный метод. Решив, что подготовить тестовые данные для трех проходов по коду — не такая уж непреодолимая сложность, отложил эту задачу до утра. Под катом решение, пришедшее в голову за ночь, позволяющее разбивать тестирование рекурсивных методов на части.  Читать дальше →
										 
										Тэги: it-систем , php , phpunit , программирование , рекурсия , тестирование Страницы: 1 2 3 4 5 6 7 8 9 10 11  
						Главная / Главные темы / Тэг «phpunit»
					 | 
					
					
										Взлеты Топ 5 Падения Топ 5 |