diff --git a/1-js/3-writing-js/4-testing/article.md b/1-js/3-writing-js/4-testing/article.md
index a5721a71..6ede5583 100644
--- a/1-js/3-writing-js/4-testing/article.md
+++ b/1-js/3-writing-js/4-testing/article.md
@@ -71,7 +71,7 @@ describe("pow", function() {
- Пишется спецификация, которая описывает самый базовый функционал.
- Делается начальная реализация.
-- Для проверки соответствия спецификации мы задействуем одновременно фреймворк, в нашем случае [Mocha](http://visionmedia.github.io/mocha/) вместе со спецификацией и реализацией. Фреймворк запускает все тесты `it` и выводит ошибки, если они возникнут. При ошибках вносятся исправления.
+- Для проверки соответствия спецификации мы задействуем одновременно фреймворк, в нашем случае [Mocha](http://mochajs.org/) вместе со спецификацией и реализацией. Фреймворк запускает все тесты `it` и выводит ошибки, если они возникнут. При ошибках вносятся исправления.
- Спецификация расширяется, в неё добавляются возможности, которые пока, возможно, не поддерживаются реализацией.
- Идём на пункт 3, делаем реализацию, и так далее, до победного конца.
@@ -86,7 +86,7 @@ describe("pow", function() {
Мы будем использовать:
-- [Mocha](http://visionmedia.github.io/mocha/) -- эта библиотека содержит общие функции для тестирования, включая `describe` и `it`.
+- [Mocha](http://mochajs.org/) -- эта библиотека содержит общие функции для тестирования, включая `describe` и `it`.
- [Chai](http://chaijs.com) -- библиотека поддерживает разнообразные функции для проверок. Есть разные "стили" проверки результатов, с которыми мы познакомимся позже, на текущий момент мы будем использовать лишь `assert.equal`.
- [Sinon](http://sinonjs.org/) -- для эмуляции и хитрой подмены функций "заглушками", понадобится позднее.