Подтвердить что ты не робот

Что эквивалентно Java System.out.println() в Javascript?

Я пишу несколько тестов для кода Javascript, и мне нужно сбрасывать некоторые сообщения во время процесса компиляции, когда встречаются ошибки.

Есть ли какой-либо эквивалент Java System.out.println() в Javascript?

P.S.: мне также нужно сбрасывать отладочные инструкции во время тестирования.

UPDATE

Я использую плагин maven в файле, содержащем все объединенные тесты:

        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.1</version>
            <executions>
                <execution>
                <phase>test</phase>
                <goals>
                    <goal>java</goal>
                </goals>
                </execution>
            </executions>
            <configuration>
                <mainClass>org.mozilla.javascript.tools.shell.Main</mainClass>
                <arguments>
                    <argument>-opt</argument>
                    <argument>-1</argument>
                    <argument>${basedir}/src/main/webapp/html/js/test/test.js</argument>
                </arguments>
            </configuration>
        </plugin>

ОБНОВЛЕНИЕ II

Я пробовал console.log("..."), но получаю:

js: "src/main/webapp/html/js/concat/tests_all.js", line 147:
uncaught JavaScript runtime exception: ReferenceError: "console" is not defined

Код, который я тестирую, представляет собой набор функций (например, в библиотеке). Я использую QUnit.

4b9b3361

Ответ 1

По существу console.log("Put a message here."), если браузер имеет поддерживающую консоль.

Другим типичным методом отладки является использование предупреждений, alert("Put a message here.")

RE: Обновление II

Это, кажется, имеет смысл, вы пытаетесь автоматизировать тесты QUnit, из того, что я прочитал на QUnit, это пакет/библиотека для тестирования модулей в браузере. QUnit ожидает запуска в браузере и поэтому ожидает, что браузер распознает все функции JavaScript, которые вы вызываете.

На основе вашей конфигурации Maven, похоже, вы используете Rhino для выполнения вашего Javascript в командной строке/терминале. Это не будет работать для проверки специфики браузера, для этого вам, вероятно, потребуется посмотреть в Selenium. Если вы не заботитесь о тестировании JavaScript в браузере, но проверяете только JavaScript на уровне командной строки (по той причине, что я не знаком), он обнаруживает, что Rhino распознает метод print() для оценивая выражения и распечатывая их. Оформить заказ эту документацию.

Эти ссылки могут вас заинтересовать.

QUnit и автоматическое тестирование

Тесты блока JavaScript с помощью QUnit

Ответ 2

Я нашел решение:

print("My message here");

Ответ 3

Я использую Chrome и print() буквально печатает текст на бумаге. Это то, что работает для меня:

document.write("My message");

Ответ 4

console.log().

Chrome, Safari и IE 8+ поставляются со встроенными консолями (как часть большого набора средств разработки). Если вы используете Firefox, getfirebug.com.

Ответ 5

Нет, по крайней мере, нет, если вы не используете какой-либо инструмент разработчика в своем браузере, например. Firebug в Firefox или инструменты разработчика в Safari. Тогда вы обычно можете использовать console.log.

Если я что-то делаю, например, в iOS-устройстве, я могу добавить <div id="debug" />, а затем зайти в него.

Ответ 6

Вы всегда можете просто добавить приглашение alert() в любом месте функции. Особенно полезно знать, вызвана ли функция, если функция завершена или функция не работает.

alert('start of function x');
alert('end of function y');
alert('about to call function a');
alert('returned from function b');

Вы получаете идею.

Ответ 7

Я тоже собираюсь задать тот же вопрос. Но из того, что я узнал из codeacademy.com, ниже кода достаточно, чтобы отобразить вывод или текст?

print("hello world")  

Ответ 8

В java System.out.println() что-то выводит на консоль. В javascript то же самое может быть достигнуто с помощью console.log().

Вам необходимо просмотреть консоль браузера, нажав клавишу F12 которая открывает инструмент разработчика, а затем переключиться на вкладку console.