টিডিডিতে অ্যারেঞ্জ অ্যাক্ট অ্যাসেট (এএএ) সিনট্যাক্স রয়েছে:
[Test]
public void Test_ReturnItemForRefund_ReturnsStockOfBlackSweatersAsTwo_WhenOneInStockAndOneIsReturned()
{
//Arrange
ShopStock shopStock = new ShopStock();
Item blackSweater = new Item("ID: 25");
shopStock.AddStock(blackSweater);
int expectedResult = 2;
Item blackSweaterToReturn = new Item("ID: 25");
//Act
shopStock.ReturnItemForRefund(blackSweaterToReturn);
int actualResult = shopStock.GetStock("ID: 25");
//Assert
Assert.AreEqual(expectedResult, actualResult);
}
বিডিডি-তে লেখার পরীক্ষাগুলি একই ধরণের কাঠামো ব্যবহার করে তবে হ্যাভেন হ্যাভ থুথ (জিডাব্লুটি) সিনট্যাক্স সহ:
[Given(@"a customer previously bought a black sweater from me")]
public void GivenACustomerPreviouslyBoughtABlackSweaterFromMe()
{ /* Code goes here */ }
[Given(@"I currently have three black sweaters left in stock")]
public void GivenICurrentlyHaveThreeBlackSweatersLeftInStock()
{ /* Code goes here */ }
[When(@"he returns the sweater for a refund")]
public void WhenHeReturnsTheSweaterForARefund()
{ /* Code goes here */ }
[Then(@"I should have four black sweaters in stock")]
public void ThenIShouldHaveFourBlackSweatersInStock()
{ /* Code goes here */ }
যদিও এগুলি প্রায়শই একই হিসাবে বিবেচিত হয় সেখানে বিভিন্ন পার্থক্য রয়েছে। কয়েকটি মূল বিষয়গুলি হ'ল:
জিডাব্লুটিটি বিডিডি ফ্রেমওয়ার্কগুলিতে একটি বৈশিষ্ট্য ফাইলের স্পেসিফিকেশনে সরাসরি ম্যাপ করা যায়
সরল ইংরাজির ব্যবহারকে উত্সাহিত করে এবং প্রতিটি অংশটি কী করছে তার একটি সংক্ষিপ্ত বিবরণ রেখে জি -ডব্লিউটি অ-বিকাশকারীদের পক্ষে বোঝা সহজ is
প্রদত্ত কখন এবং তারপরে বিভিন্ন বিডিডি ফ্রেমওয়ার্ক যেমন স্পেসফ্লো এবং শসাবারের কীওয়ার্ড রয়েছে
আমার প্রশ্ন হ'ল এএএ এবং জিডব্লিউটি-এর মধ্যে (নামগুলি বাদে) অন্য কোনও পার্থক্য রয়েছে? এবং উপরে উল্লিখিত বিষয়গুলি ছাড়াও কি অন্য কোনও কারণে অন্যটির চেয়ে বেশি পছন্দ করা উচিত?