Upgrade to Pro — share decks privately, control downloads, hide ads and more …

如何使用 OData 來加速測試效率

LittleLin
August 17, 2017

如何使用 OData 來加速測試效率

LittleLin

August 17, 2017
Tweet

More Decks by LittleLin

Other Decks in Programming

Transcript

  1. 守備範圍 ‒ 就只是個 NPC ERP ‒ .NET Tech Stack ‒

    EC 訂單成立前後的⾦金金、物流
  2. 撰寫 Feature 檔的痛點 ‒ 將 DB 查詢結果轉為 Gherkin 語法很費時 ‒

    時間成本 = 表格數 * 欄欄位數 ‒ 時間複雜度 = 時間成本 * 表格關聯聯數
  3. 舉例例? SELECT TOP 1 c.Id as CustomerId, c.Name as CustomerName,

    o.Id as [OrderId], o.Status as OrderStatus, p.Id as ProductId, p.Name as ProductName, od.UnitPrice, od.Quantity FROM [Customer] c JOIN [Order] o ON o.CustomerId = c.Id JOIN [OrderItem] od ON od.OrderId = o.Id JOIN [Product] p ON od.ProductId = p.Id ORDER BY o.CreatedTime
  4. ⼯工作項⽬目 ‒ 組出 SQL Query ‒ 將查詢結果,按照來來源表格分群 ‒ 將分群結果,轉為 Gherkin

    語法的 Given ‒ 考量量表格關聯聯性,Given 段落落需有順序性 (Customer -> Order -> Product -> OrderDetail)
  5. 以 SQL ⾓角度來來理理解 OData SELECT TOP 1 * FROM [Customer]

    c JOIN [Order] o ON o.CustomerId = c.Id /Customers?$top=1&$expand=Orders
  6. 使⽤用 OData 的好處 ‒ 使⽤用 RESTful API 查詢資料 ‒ 省去繁瑣的

    SQL 操作 ‒ 更更結構化、語意化的輸出結果
  7. 總結 ‒ OData 是好東⻄西 ‒ 使⽤用 OData CSDL 可以推導出 ER

    Model ‒ ERP Model 搭配 BFS 可以推導出新增測 試資料順序 ‒ 提升測試效率