问题标签 [codeception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 使用 CLI 使用 phar 文件不起作用
目前我正在尝试安装 codeception 并使用 CLI 获取文件并安装它。我是 CLI 的新手并使用 SSH 连接。不过习惯了。我使用下载文件$ WGET
然后执行$ php codecept.phar bootstrap
。
CLI (cygwin) 不执行任何操作。它只是创建一个新行c?$
,然后我可以继续使用 CLI。不过什么也没发生。所以我想我只是尝试使用composer来安装codeception。使用 CLI 下载 composer.phar 并使用$ php composer.phar
. 然后它创建一个新行????$
。然后我可以再次使用 CLI,没有任何变化或发生。
我的假设是执行 phar 文件有问题。是不是有些设置不对?
一些额外的数据:
$ php -v
:
$ php -m
:
包含 phar 和 curl with 都是 codecept 所需要的。
$ php -i
:(法尔部分)
design-patterns - 使用 Codeception 在测试 REST API 时我对页面对象使用什么
我正在使用 Codeception 为一些 REST API 创建 api 测试。我发现页面对象对编写测试很有帮助,但我应该使用另一个 Codeception 对象吗?
例如,我将用户信息(名字、姓氏、用户 ID ...)放入 UsersPage 页面对象类中,但是当它不代表页面时,它被命名为用户页面,这让我很困扰。我应该使用另一个 Codeception 对象来表示我在测试中使用的可重用信息吗?
laravel - Codeception sqlite:Laravel 4 中针对 Mockery 的内存
我注意到 Codeception 有sqlite:memory
. 在这种情况下,我应该选择退出Mockery吗?
我的理解是 Mockery 使测试能够避免命中数据库。通过上面提到的 Codeception 选项,我可以使用示例数据为数据库播种并在内存中命中它。
当我将它与 Selenium2 和 PhantomJS 放在一起时,一些测试在 Laravel 4 中从 15 秒缩短到 1 秒。
php - Codeception:保持登录状态
我想在大多数测试之前保留或运行登录。但是,如果我尝试将登录代码移动到 _before 它不起作用,因为我没有可用的 webguy 实例。
在多个测试之间保持会话的最佳方法是什么?到目前为止,这是我的代码,很高兴得到一些帮助。我已经用谷歌搜索并检查了文档,但我找不到任何关于会话的东西。
php - 如何在 laravel 4 中对代码接收单元测试进行故障排除
虽然我的其他 Codeception 测试正在运行(验收、api 等),但很少有单元测试会运行。它看不到任何 Test.php 类型的测试,只有 Cept.php 和 Cest.php。它不接受(错误)任何断言测试,例如“$this->assertEquals($expeced.'expect this')。我该如何解决这个问题,因为失败的测试只返回:Codeception PHP Testing Framework v1.8.1 Powered由 Sebastian Bergmann 编写的 PHPUnit 3.7.28。
正如我在供应商目录中看到的那样,phpunit 似乎已安装。我可以直接从命令行运行它来查看它的帮助。但仅此而已。Laravel/Codeception 组合中的单元测试通常会变得不稳定吗?有没有我缺少的配置???
php - 从不同的文件夹创建和运行测试
我在从不同文件夹创建和运行测试时遇到了一点问题。烧了很多小时,但还没有找到解决方案。使用 Codeception 和 Selenium2。
我有一个结构:
我在哪里有 codecept 和 codeception 主文件。
我有 3 种类型的测试文件夹(验收、单元、功能)和 3 种名称相同的 suite.yml。
当我想放置我的所有项目时,我在磁盘 D 文件夹中,这个文件是空的并且没有代码接收文件:
我怎么看这个:
并且 codeception 只运行这个测试,里面有 1 个或多个测试。如何以这种方式创建和运行测试?也许我错了,还有另一种方法可以做到这一点。因此,如果是,请写为示例。
我错过了在该目录中创建文件的部分,因为我不知道它是如何工作的。但是我可以通过键入命令创建包含所有代码接收文件的完整目录:
但这不是我需要的。
php - 有没有办法控制 Codeception 中的测试顺序?
在多年编写普通的单元测试后,我才开始使用CodeceptionPHPUnit
。困扰我的一件事是,我找不到一种方法来控制调用测试的顺序。
在纯旧PHPUnit
的情况下,我像这样手动构建测试结构:
并且测试将按照它们添加到套件的顺序被调用。Codeception
另一方面,似乎正在遍历目录并运行它可以找到的每个测试。
我希望能够在两个级别上控制测试的顺序:
- 调用不同类型测试的顺序(即我想在
unit tests
之前运行acceptance tests
) - 我想控制在特定测试类型中调用的测试顺序(以类似的方式
PHPUnit
构建套件)
广告。2:假设我在acceptance
目录中有两个测试:
我希望能够运行XyzCept.php
before AbcCept.php
。这甚至可能吗?
并期待挑剔的评论:是的,我知道测试应该能够以任何顺序运行,而不是相互依赖,但这不是我要问的。
selenium - Codeception WebDriver 安装
我正在使用此文档在 Firefox 浏览器 http://codeception.com/docs/modules/WebDriver中测试代码接收
我已经设置好了所有东西,就像我之前用 PhpBrowser 玩过代码接收一样。但是我在使用 selenium WebDriver 运行 codeception 时遇到问题,这是一个新手问题,但我来了:
在我发出命令后:
我的控制台有点卡住说
之后我该怎么做才能开始代码接收?当我只使用 PhpBrowser 时,我开始使用它:
我是否必须在某处或某处指定 WebDriver 的位置?我找不到很多关于这个的信息,只是 eclipse 的教程和它们拖放并通过代码指定的地方,而且文档不是很舒服。
curl - Plesk 共享主机上的 Codeception 404
我只是想让自己使用 Codeception。
全部安装完毕并进行基本验收测试,看看它是否有效。
所以我跑...
php codecept.phar 运行
...它经历了所有的动作,但测试失败了,因为它是 404s。
当我在浏览器中点击相同的 URL 或从另一台服务器获取它时,它工作得很好。
如果有什么不同,我试图让它运行的地方是运行 Plesk 11.5.30 的共享主机环境。服务器属于我工作的机构,所以我应该能够在必要时进行更改。
有人可以在这里帮忙吗?
更新
当 URL 指向同一服务器时,在 Plesk 服务器上使用 curl、wget 等肯定会出现问题。相同的命令在其他服务器上也能正常工作。我已经让我们的服务器管理员查看了这个,我认为一旦 curl 问题得到排序,验收测试可能会起作用。
codeception - 计算一个类在带有代码接收的页面中出现的次数
我正在使用 Codeception 运行验收测试,我需要计算带有“.remove”类的按钮在一页中出现的次数。这样的按钮位于 html 表格内,计数取决于购物车中有多少物品。
以下是我尝试使用的代码: