具有php和javascript的应用程序的测试用例

时间:2016-05-09 05:28:28

标签: jasmine phpunit

有一个使用php和javascript的应用程序。如果我想为此应用程序编写测试用例。我必须写两个(PHP代码的phpunit测试用例和javascript代码的jasmine测试用例)?

我已从链接https://phar.phpunit.de/phpunit.phar

下载了phpunit

我只是不清楚如何启动测试用例。请帮忙。 从链接https://softwareengineering.stackexchange.com/questions/28306/can-i-test-effectively-javascript-functions-with-a-php-unit-testing-framework,他们说我必须编写javascript代码的javascript测试用例和PHP代码的php测试用例。但是我的javascript代码介于php代码之间。如何编写和执行测试用例?

1 个答案:

答案 0 :(得分:0)

第一个重要的概念是:要进行测试,必须运行您的代码,为此您必须使用每种情况所需的环境:

  • for php:通常是php命令行可执行文件
  • for Javascript:真正的浏览器,像PhantomJS这样的无头浏览器,或者node.js

一旦明确了这一点,就很容易理解如何设置测试。使用PHPUnit测试您的php文件和类,以及用于测试Javascript代码的首选Javascript框架。

关于与PHP代码混合的Javascript代码:

  • 严格来说,Javascript代码最终会被发送到浏览器,即使它是由php编写的。因此,它应该可以在Javascript环境中运行它。

  • 但实际上,这可能表明应用程序结构不佳,其中Javascript代码未与后端代码分离,并且可能不使用对象和关注点分离。这将使代码很难测试。

IMO最难测试的部分是能够编写可测试的代码,而不是编写实际的测试。如果您的代码不使用对象,某种依赖注入,用于编写HTML和Javascript代码的模板与后端代码没有完全分离,我会说您在尝试测试它时会遇到困难。我的建议是,您使用最佳实践重写应用程序的某些部分并尝试对其进行测试。使用框架通常会有所帮助,因为框架强制执行关注点分离,并且通常会集成单元测试。