۱ محسن محمدخانی
واجب بودن نوشتن یک تست
جامعه مهندسی نرم افزار ایجاد شده در ۰۹ خرداد ۱۴۰۱

سلام 

من یک کلاس helper به نام PasswordHasher 

 
namespace App\\Helper;
class PasswordHasher {
  public static function HashPassword($password): string {
    return md5(env("SALT_PASSWORD") . $password . env("SALT_PASSWORD"));
  }
}

و یک unit test هم برای متد HashPassword نوشتم 

namespace Tests\\Unit\\Helpers\\PasswordGenerator;
use App\\Helper\\PasswordHasher;
use Tests\\TestCase;
class PasswordGeneratorTest extends TestCase {
  public function test_is_generator_password_return_correct() {
    $password = "asd123ASD";
    $this->assertEquals(PasswordHasher::HashPassword($password),
      md5(env("SALT_PASSWORD") . $password . env("SALT_PASSWORD")));
  }
}

الان ما اینجا داریم یه جورایی درستی کارایی تابع md5 و تابع env بررسی میکنیم

آیا واقعا این تست لازم هستش؟؟

سلام خدمت شما. این نوع کد جز کدهایی محسوب میشه که بهشون میگن Trivial Code و واقعا نیازی به تست شدن ندارن. پیشنهاد می‌کنم حتما کتاب Unit Testing آقای Khorikove رو بخونید.

کیوان علی محمدی ۱۱ خرداد ۱۴۰۱، ۱۱:۰۱