注意:订单测试之前务必保证POI同步、房态同步功能正常,房态查询接口能正常查询到推送的房态数据,库存数量必须大于等于2。
测试“测试环境”时:
POI同步:http://openplatform.hotel.test.meituan.com/open/v1/pois
房态同步:http://openplatform.hotel.test.meituan.com/open/v1/roomstatus/all
房态查询:http://openplatform.hotel.test.meituan.com/open/v1/roomstatus/query
订单URL:对接方按照“对接文档”中订单接口规范进行开发并部署到测试环境后,填写对应的访问地址。
partnerId:平台partnerId,如不知,可联系开发人员。
belongPartnerId:推送房态的内部供应商id。
poiId:推送房态的酒店id。
入住时间:订单对应的入住时间,务必保证入住时间对应房态数据已同步正常且能正常查询。
RoomType:推送房态的roomType。
早餐数:推送房态的breakfastNum。
BOOK_SUCCESS不可取消订单id:对接方需要在对接系统中准备一个已经预定成功且不可取消的订单,用于测试取消订单失败的用例。
BOOK_FAIL订单id:对接方需要在对接系统中准备一个预定失败的订单,用于测试查询预定失败订单的用例。
BOOK_SUCCESS可取消订单id:对接方需要在对接系统中准备一个已经预定成功且可取消的订单,用于测试取消订单成功的用例。
BOOKING订单id:如果对接方创建订单接口为非及时确认,需要准备一个预定中的订单,用于测试取消预定中订单成功的用例。
CANCEL_FAIL订单id:如果对接方取消订单接口为非及时确认,需要准备一个取消失败的订单,用于测试查询取消失败订单的用例。
功能 | 用例 | 期望结果 | 判断方式 |
---|---|---|---|
BA认证 | 遍历四个订单接口,不传http header发送请求 | ba认证未通过 | code为12或121或122 |
遍历四个订单接口,使用错误http header发送请求 | ba认证未通过 | code为12或121或122 | |
数据加密 | 遍历四个订单接口,使用非加密参数请求 | 请求失败 | code为18 |
库存校验 | 使用大于当前库存进行下单前校验 | 请求失败 | platformOrderStatusEnum为:VALIDATE_FAIL、code为1002或1003 |
库存校验失败后更新房态 | 使用接口返回的房态数据进行更新(code为1002则使用回填的房态更新库存,为1003则同时更新库存和价格) | 更新成功 | platformOrderStatusEnum为VALIDATE_FAIL、code为1002或1003、inventoryPrice不为空且有合法的房态参数、库存数值对比下单时库存有更新 |
价格校验 | 使用错误价格进行下单前校验 | 请求失败 | platformOrderStatusEnum为:VALIDATE_FAIL、code为1001或1003 |
价格校验失败后更新房态 | 使用接口返回的房态数据进行更新(code为1001则使用回填的房态更新价格,为1003则同时更新库存和价格) | 更新成功 | platformOrderStatusEnum为VALIDATE_FAIL、code为1001或1003、inventoryPrice不为空且有合法的房态参数、底卖价模式正确、价格数值对比下单时价格有更新 |
错误库存及价格校验 | 使用错误库存及价格进行下单前校验 | 请求失败 | platformOrderStatusEnum为:VALIDATE_FAIL、code为1003 |
错误库存及价格校验失败后更新房态 | 使用接口返回的房态数据进行更新 | 更新成功 | platformOrderStatusEnum为VALIDATE_FAIL、code为1003、inventoryPrice不为空且有合法的房态参数、底卖价模式正确、价格数值对比下单时价格有更新、库存数值对比下单时库存有更新 |
早餐校验 | 如果“早餐类型”参数非0,传breakfastNumType为0测试含早产品下单前校验 | 请求失败 | platformOrderStatusEnum为:VALIDATE_FAIL |
如果“早餐类型”参数为0,传breakfastNumType非0测试不含早产品下单前校验 | 请求失败 | platformOrderStatusEnum为:VALIDATE_FAIL | |
创建订单 | 使用错误价格创建订单 | 请求失败 | platformOrderStatusEnum为:BOOK_FAIL |
使用大于当前库存创建订单 | 请求失败 | platformOrderStatusEnum为:BOOK_FAIL | |
查询订单 | 使用BOOKING订单id查询订单 | 请求成功,订单状态为预定中 | platformOrderStatusEnum为:BOOKING |
使用BOOK_SUCCESS订单id查询订单 | 请求成功,订单状态为预定成功 | platformOrderStatusEnum为:BOOK_SUCCESS | |
使用BOOK_FAIL订单id查询订单 | 请求成功,订单状态为预定失败 | platformOrderStatusEnum为:BOOK_FAIL | |
使用CANCEL_FAIL订单id查询订单 | 请求成功,订单状态为预订成功或预订中 | platformOrderStatusEnum为:BOOK_SUCCESS或BOOKING | |
取消订单 | 使用状态为BOOK_SUCCESS且不可取消的订单进行取消 | 请求失败 | platformOrderStatusEnum为:CANCEL_FAIL |
整体流程 |
1)校验订单 2)创建订单(假设订单id为A) 3)查询订单A 4)使用状态为BOOKING且可取消的录入订单(假设订单id为B)进行取消操作 5)使用状态为BOOK_SUCCESS且可取消的录入订单(假设订单id为C)进行取消操作 6)查询订单C |
请求成功 | 所有操作成功 |