هذا إطار اختبار موجه نحو التوثيق من PHP 5.3 إلى 7.x. والغرض منه هو التأكد من أن رموز الأمثلة الخاصة بك تعمل عن طريق اختبار الوحدة. مستوحاة من اختبار جولانج "أمثلة".
انظر المثال أدناه. القسم الأول هو مثال للكود الذي سيتم اختباره. التعليق الذي يبدأ Output
هو رمز اختبار.
<?php
function hello ( string $ name ): string {
return ' hello ' . $ name ;
}
echo hello ( ' alice ' ) . "n" ;
echo hello ( ' bob ' ) . "n" ;
// Output:
// hello alice
// hello carol
رمز المثال هذا مكسور. من المتوقع أن تكون كلمة "carol" مخرجًا، إلا أنها لا تظهر. فشلت حالة الاختبار هذه، ولكنك قادر على معرفة وجود مشكلة في رمز المثال ويمكنك إصلاحها.
يقوم Livexample بالخطوات التالية:
Output
في رمز المثال عن طريق تحليله.في بعض الأحيان، يتم كسر رموز الأمثلة، عن طريق إضافة ميزات جديدة، أو نسيان تحديثها، أو طلبات السحب التي لا تهتم بأكواد الأمثلة، وما إلى ذلك.
تعتبر رموز الأمثلة المعطلة تجربة سيئة لمستخدمي المكتبة.
باستخدام Livexample، سوف تحصل على الفوائد:
قم بتثبيت suin/livexample
عبر Composer:
composer require --dev suin/livexample
أضف ExampleTest.php
إلى دليل الاختبارات الخاص بك:
use Livexample PHPUnit ExampleTestCase ;
class ExampleTest extends ExampleTestCase
{
public function exampleFiles ()
{
// specify your example code directory.
return self :: exampleDirectory ( ' example ' );
}
}
تشغيل فبونيت:
phpunit
هناك نوعان من بناء الجملة للتأكيد:
// Output: {expected output}
//=> {expected output}
echo 1 ; // Output: 1
echo " hello " ; //=> hello
var_dump ([ 1 , 2 , 3 ]);
// Output:
// array(3) {
// [0] =>
// int(1)
// [1] =>
// int(2)
// [2] =>
// int(3)
// }
var_dump($object)
تقوم الدالة var_dump()
بطباعة معرفات الكائنات، والتي تكون #some-number
بجوار اسم الفئة. نظرًا لأن المعرفات تعتمد على بيئة التنفيذ، فلا يمكنك ترميزها بشكل ثابت في عبارة Output:
بدلاً من ترميز المعرف بشكل ثابت، يمكنك استخدام عنصر نائب %d
للرقم:
<?php
var_dump ( new stdClass );
// Output:
// object(stdClass)#%d (0) {
// }
php
php -d auto_prepend_file=vendor/autoload.php
-d xdebug.overload_var_dump=0
example/simple-usage.php
لقد انتهى الدعم الرسمي لـ PHP 5.3، ومع ذلك، يستمر RHEL/CentOS في دعم PHP 5.3 حتى في عام 2017. ولا تزال بيئات PHP القديمة قيد التشغيل حتى اليوم. من المفترض أيضًا استخدام Livexample لإعادة هيكلة مثل هذه البيئات القديمة.
الرجاء مراجعة سجل التغيير لمزيد من التفاصيل.
يرجى الاطلاع على المساهمة لمزيد من التفاصيل. الرجاء إصلاح لغتي الإنجليزية.