java - Javascript 中 Java 的 System.out.println() 等价物是什么?

标签 java javascript compile-time println system.out

我正在为 Javascript 代码编写一些测试,当遇到错误时,我需要在编译过程中转储一些消息。

在 Javascript 中有没有等同于 Java 的 System.out.println() 的东西?

附言:我还需要在实现测试时转储调试语句。

更新

我在包含所有合并测试的文件上使用 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>

更新二

我尝试了 console.log("..."),但我得到:

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

我正在测试的代码是一组函数(就像在库中一样)。我正在使用 QUnit。

最佳答案

本质上是 console.log("Put a message here.") 如果浏览器有支持的控制台。

另一种典型的调试方法是使用警报,alert("Put a message here.")

回复:更新 II

这似乎有道理,您正在尝试自动化 QUnit 测试,从我在 QUnit 上读到的内容来看,这是一个浏览器内单元测试套件/库。 QUnit 希望在浏览器中运行,因此希望浏览器能够识别您正在调用的所有 JavaScript 函数。

根据您的 Maven 配置,您似乎正在使用 Rhino 在命令行/终端执行您的 Javascript。这不适用于测试浏览器细节,您可能需要为此查看 Selenium。如果您不关心在浏览器中测试 JavaScript,而只是在命令行级别测试 JavaScript(出于我不熟悉的原因),Rhino 似乎可以识别 print() 评估表达式并将其打印出来的方法。结帐this documentation .

您可能会对这些链接感兴趣。

QUnit and Automated Testing

JavaScript Unit Tests with QUnit

关于java - Javascript 中 Java 的 System.out.println() 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8733179/

相关文章:

java - 如何使用 Netbeans 将选项传递给 jar 文件

java - 将 SAP netweaver 7.0 项目迁移到 7.4

javascript - 如何在JQuery中的<tr>表中添加数据

c++ - 为什么 C++ 编译器可以将函数声明为 constexpr,而不能是 constexpr?

java - Hibernate 找不到刚刚创建的表的类映射

java - 获取字符串和逗号后面的值,如果有字符 '|' 则结束

javascript - 为什么这个函数变量有初始值?

javascript - 同一页面上两个日历的不同设计

c++ - 将一个作用域中的枚举作为函数参数传递给另一个作用域

ocaml,能够在值更改时触发编译错误