-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathphpunit.xml
More file actions
57 lines (57 loc) · 2.68 KB
/
Copy pathphpunit.xml
File metadata and controls
57 lines (57 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="vendor/phpunit/phpunit/phpunit.xsd"
bootstrap="vendor/autoload.php"
colors="true"
>
<testsuites>
<testsuite name="Unit">
<directory>tests/Unit</directory>
</testsuite>
<testsuite name="Feature">
<directory>tests/Feature</directory>
</testsuite>
</testsuites>
<source>
<include>
<directory>app</directory>
</include>
</source>
<php>
<env name="APP_ENV" value="testing"/>
<env name="APP_MAINTENANCE_DRIVER" value="file"/>
<env name="BCRYPT_ROUNDS" value="4"/>
<env name="CACHE_STORE" value="array"/>
<!--
schema 用 MySQL 專屬的空間函式(POINT/ST_Distance_Sphere/MBRContains,
見 App\Repositories\RestaurantRepository),sqlite 跑不起來,改連同一個
Docker MySQL 的獨立測試庫,不碰 veggiemap 開發資料。
-->
<env name="DB_CONNECTION" value="mysql"/>
<env name="DB_HOST" value="mysql"/>
<env name="DB_PORT" value="3306"/>
<env name="DB_DATABASE" value="veggiemap_testing"/>
<env name="DB_USERNAME" value="veggiemap"/>
<env name="DB_PASSWORD" value="veggiemap"/>
<env name="MAIL_MAILER" value="array"/>
<env name="PULSE_ENABLED" value="false"/>
<!--
慢查詢 log 在測試裡幾乎全是雜訊:migration 的 drop table、RefreshDatabase、
以及併發測試刻意製造的鎖等待都會超過門檻(實測 69 筆裡沒有一筆是應用程式
的問題)。留著只會把真正的慢查詢埋掉,還讓每次測試多做一堆 Log::warning。
0 以下=關掉(見 config/veggiemap.php)。ObservabilityTest 直接呼叫
QueryPerformanceLogger::handle() 驗證邏輯,不靠這個監聽器。
-->
<env name="VEGGIEMAP_SLOW_QUERY_MS" value="0"/>
<!--
慢請求門檻在測試裡拉高但**不關掉**。測試環境的 QUEUE_CONNECTION=sync,
會把 CalculateRestaurantScoreJob 這種工作直接跑在請求裡(實測
admin/reports/approve 因此要 1.2 秒),那是測試設定造成的、不是端點本身慢。
留 5 秒當哨兵:真的有端點跑超過五秒,那就是卡住了,值得看見。
-->
<env name="VEGGIEMAP_SLOW_REQUEST_MS" value="5000"/>
<env name="QUEUE_CONNECTION" value="sync"/>
<env name="SESSION_DRIVER" value="array"/>
<env name="TELESCOPE_ENABLED" value="false"/>
</php>
</phpunit>