繁体   English   中英

在多个网络域上运行Laravel Dusk

[英]Run Laravel Dusk on multiple web domains

我有多个网站。

  1. zh.web-site.com/pages/faqs
  2. fr.web-site.com/pages/faqs
  3. ar.web-site.com/pages/faqs
  4. br.web-site.com/pages/faqs
  5. ... 30个具有相同URI结构的网站

我想在每个网站上运行浏览器测试。

我已经更新了我所有网站的常见问题页面上的电子邮件,并且我想测试它们是否都进行了更改。

<?php

namespace Tests\Browser;

use Tests\DuskTestCase;
use Laravel\Dusk\Browser;

class UpdatedEmailTest extends DuskTestCase
{
    public function testUpdatedEmail()
    {
        $this->browse(function (Browser $browser) {
            $browser->visit('/pages/faqs')
                ->assertPathIs('/pages/faqs')
                ->assertSee('new_email@sample.com')
                ->assertDontSee('old_email@sample.com');
        });
    }
}

该测试绝对可以在我的任何网站上正常工作,但是每次运行时都必须编辑.env文件。

我该怎么做才能使我无需编辑.env文件就可以在所有这些网站上进行测试?

为此,您可能需要遍历所有30多个网站域。

public function testUpdatedEmail()
{
    $websites = .... //array with full urls and emails

    foreach ($websites as $website)

      $this->browse(function (Browser $browser) use ($website) {
          $browser->visit($website["url"])
            ->assertPathIs(parse_url($website["url"], PHP_URL_PATH))
            ->assertSee($website["new_email"])
            ->assertDontSee($website["old_email"]);
    });
}

请参阅Browers.php https://github.com/laravel/dusk/blob/bcb05e6fe29817bbf04574f68996312a296bb366/src/Browser.php#L119

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM