{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
送料無料

配送エリアを切り替えます

在庫情報と配送スピードは地域によって異なる場合があります。

郵便番号の履歴

{{email ? __('Got it!') : __('Restock Alert')}}

商品が再入荷され次第、すぐにメールでお知らせします。

Yami

Jingdong book

单元测试的艺术(第2版)

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

单元测试的艺术(第2版)

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
終了まで
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
セール終了まで
タイムセール開始まであと タイムセール終了まであと
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) 詳細
消費期限

現在は販売していません

この商品がいつ再入荷するか、分かりません。

当該地域へ配送できません
売り切れ

製品説明

商品の詳細を全て表示
Editer Recommend

基础概念+代码+具体分析,手把手教你学测试
解密神秘魔法:隔离框架
测试“不可测试”的代码

Content Description

《单元测试的艺术(第2版)》是经典的单元测试学习指南,分四部分全面介绍了单元测试技术。第1部分阐述单元测试基本概念,包括如何使用测试框架。第二部分讨论破除依赖的高级技术:模拟对象、存根和隔离框架,包括重构代码以使用这些技术的模式。第三部分介绍测试代码的组织方式、运行测试和重构测试结构的模式,以及编写测试的实践。第四部分介绍如何在组织内实施变革和修改现有代码。
《单元测试的艺术(第2版)》适合所有语言的测试和开发人员,特别是测试主管和项目经理。
Author Description

Roy Osherove,世界单元测试专家,常年为世界各地的开发团队提供咨询和培训服务,并在各种大会上发表演讲,内容包括单元测试及测试驱动开发的艺术、团队领导力和敏捷开发实践。其个人技术博客osherove.com平均月独立访问量约50 000,提供了各种技术视频及其他培训信息,另著有Notes to a Software Team Leader: Growing Self Organizing Teams。
Comments

“不管你是单元测试和测试驱动开发的新手,还是已经有了丰富经验的人,都能在这本书里找到适合自己的内容。请准备好欣赏Roy给你演唱的‘单元测试的艺术’。”
——Robert C. Martin,软件开发大师,设计模式和敏捷开发先驱,敏捷联盟首任主席,被后辈程序员尊称为“Bob大叔”

“它是这一领域的经典之作,是学习单元测试的必读之书!”
——Raphael Faria,LG公司

“本书集思想性与实用性于一体。”
——Pradeep Chellappan,微软公司

“每当团队成员问我如何正确编写单元测试,我都会这样回答:看这本书!”
——Alessandro Campeis,Vimar SpA

“学习单元测试图书,没有之一!”
——Kaleb Pederson,Next IT
Catalogue

第一部分入门
第1章单元测试基础2
1.1逐步定义单元测试2
1.1.1编写优秀单元测试的重要性4
1.1.2我们都写过(某种)单元测试4
1.2优秀单元测试的特性5
1.3集成测试5
1.4什么是优秀的单元测试9
1.5一个简单的单元测试范例9
1.6测试驱动开发12
1.7成功进行TDD的三种核心技能15
1.8小结15

第2章第一个单元测试17
2.1单元测试框架18
2.1.1单元测试框架提供什么18
2.1.2xUnit框架20
2.2LogAn项目介绍20
2.3NUnit初步20
2.3.1安装NUnit21
2.3.2加载解决方案22
2.3.3在代码中使用NUnit属性24
2.4编写第一个测试25
2.4.1Assert类25
2.4.2用NUnit运行第一个测试26
2.4.3添加正检验27
2.4.4从红到绿:测试成功28
2.4.5测试代码格式28
2.5使用参数重构测试28
2.6更多NUnit属性30
2.6.1setup和teardown30
2.6.2检验预期的异常33
2.6.3忽略测试35
2.6.4NUnit的方法语法36
2.6.5设置测试类别37
2.7测试系统状态的改变而非返回值37
2.8小结41

第二部分核心技术
第3章使用存根破除依赖44
3.1存根简介44
3.2发现LogAn中对文件系统的依赖45
3.3如何使测试LogAnalyzer变得容易46
3.4重构代码设计以提高可测试性48
3.4.1抽取接口使底层实现可替换49
3.4.2依赖注入:在被测试单元中注入一个伪实现51
3.4.3在构造函数层注入一个伪对象(构造函数注入)51
3.4.4用伪对象模拟异常55
3.4.5用属性get或set注入伪对象56
3.4.6在方法调用前注入伪对象57
3.5重构技术变种63
3.6克服封装问题65
3.6.1使用internal和[InternalsVisibleTo]65
3.6.2使用[Conditional]属性66
3.6.3使用#if和#endif进行条件编译66
3.7小结67

第4章使用模拟对象进行交互测试68
4.1基于值的测试、基于状态的测试和交互测试68
4.2模拟对象和存根的区别70
4.3手工模拟对象的简单示例71
4.4同时使用模拟对象和存根73
4.5每个测试一个模拟对象78
4.6伪对象链:用存根生成模拟对象或其他存根78
4.7手工模拟对象和存根的问题79
4.8小结80

第5章隔离(模拟)框架81
5.1为什么要使用隔离框架81
5.2动态生成伪对象83
5.2.1在测试中使用NSubstitute83
5.2.2用动态伪对象替换手工伪对象84
5.3模拟值86
5.4测试事件相关的活动92
5.4.1测试事件监听者92
5.4.2测试事件是否触发93
5.5现有的.NET隔离框架94
5.6隔离框架的优缺点95
5.6.1使用隔离框架时应避开的陷阱96
5.6.2测试代码不可读96
5.6.3验证错误的事情96
5.6.4一个测试多个模拟对象96
5.6.5过度指定测试97
5.7小结97

第6章深入了解隔离框架99
6.1受限框架及不受限框架99
6.1.1受限框架99
6.1.2不受限框架100
6.1.3基于探查器的不受限框架如何工作101
6.2优秀隔离框架的价值103
6.3支持适应未来和可用性的功能103
6.3.1递归伪对象104
6.3.2默认忽略参数104
6.3.3泛伪造105
6.3.4伪对象的非严格行为105
6.3.5非严格模拟对象106
6.4隔离框架设计反模式106
6.4.1概念混淆106
6.4.2录制和重放107
6.4.3粘性行为109
6.4.4复杂语法109
6.5小结109

第三部分测试代码
第7章测试层次和组织112
7.1运行自动化测试的自动化构建112
7.1.1构建脚本结构113
7.1.2触发构建和集成115
7.2基于速度和类型布局测试116
7.2.1分离集成测试和单元测试的人为因素117
7.2.2绿色安全区117
7.3确保测试是源代码管理的一部分118
7.4将测试类映射到被测试代码118
7.4.1将测试映射到项目118
7.4.2将测试映射到类118
7.4.3将测试映射到具体的工作单元入口119
7.5注入横切关注点120
7.6为应用程序构建测试API122
7.6.1使用测试类继承模式122
7.6.2创建测试工具类和方法133
7.6.3把你的API介绍给开发人员134
7.7小结134

第8章优秀单元测试的支柱136
8.1编写可靠的测试136
8.1.1决定何时删除或修改测试137
8.1.2避免测试中的逻辑140
8.1.3只测试一个关注点142
8.1.4把单元测试和集成测试分开143
8.1.5用代码审查确保代码覆盖率143
8.2编写可维护的测试144
8.2.1测试私有或受保护的方法145
8.2.2去除重复代码146
8.2.3以可维护的方式使用setup方法149
8.2.4实施测试隔离151
8.2.5避免对不同关注点多次断言156
8.2.6对象比较158
8.2.7避免过度指定160
8.3编写可读的测试162
8.3.1单元测试命名162
8.3.2变量命名163
8.3.3有意义的断言164
8.3.4断言和操作分离165
8.3.5setup和teardown165
8.4小结166

第四部分设计和流程
第9章在组织中引入单元测试168
9.1逐步成为变革的倡导者168
9.1.1准备好面对质疑169
9.1.2说服组织内成员:支持者和反对者169
9.1.3找到可能的切入点169
9.2成功之道171
9.2.1游击式实现(自下而上)171
9.2.2说服高层(自上而下)171
9.2.3引入外援172
9.2.4使进度可见172
9.2.5设定具体目标173
9.2.6应对障碍175
9.3失败原因175
9.3.1缺少驱动力175
9.3.2缺乏政策支持175
9.3.3不好的实现和第一印象176
9.3.4缺少团队支持176
9.4影响因素176
9.5质疑和回答177
9.5.1单元测试会给现有流程增加多少时间178
9.5.2单元测试是否会抢了QA饭碗179
9.5.3证明单元测试确实有效的方法179
9.5.4单元测试有用的证据180
9.5.5QA部门还是能找到缺陷的原因180
9.5.6我们有大量没有测试的代码:应该从哪里开始181
9.5.7我们使用多种编程语言:单元测试是否可行181
9.5.8软硬件结合的开发181
9.5.9确保测试中没有缺陷的方法181
9.5.10我的代码已经调试通过了,但还需要测试的原因182
9.5.11驱动开发测试的必要性182
9.6小结182

第10章遗留代码183
10.1从哪里开始增加测试183
10.2决定选择策略185
10.2.1先易后难策略的优缺点185
10.2.2先难后易策略的优缺点186
10.3在重构前编写集成测试186
10.4遗留代码单元测试的重要工具187
10.4.1使用不受限的隔离框架轻松隔离依赖项187
10.4.2使用JMockit测试Java遗留代码189
10.4.3重构Java代码时使用Vise190
10.4.4重构前使用验收测试191
10.4.5阅读Michael Feathers关于遗留代码的书192
10.4.6使用NDepend调查产品代码192
10.4.7使用ReSharper浏览和重构产品代码192
10.4.8使用Simian和TeamCity发现重复代码(和缺陷)193
10.5小结193

第11章设计与可测试性194
11.1为什么在设计时要关心可测试性194
11.2可测试性的设计目标195
11.2.1默认情况下将方法设置为虚拟方法195
11.2.2使用基于接口的设计196
11.2.3默认情况下将类设置为非密封的196
11.2.4避免在包含逻辑的方法内初始化具体类197
11.2.5避免直接调用静态方法197
11.2.6避免在构造函数和静态构造函数中包含逻辑代码197
11.2.7把单例逻辑和单例持有者分开198
11.3可测试性设计的利弊199
11.3.1工作量199
11.3.2复杂度200
11.3.3泄露敏感知识产权200
11.3.4有时无法实现200
11.4可测试性设计的替代方法200
11.5难以测试的设计示例202
11.6小结205
11.7更多资源206

附录A工具和框架208

Introduction

我工作过的最失败的一个项目就使用了单元测试。或者说,我是这么认为的。那时我带领着一队程序员开发一个记账应用,采取的是彻底的测试驱动开发方式:编写测试,然后编写代码;看到测试失败,使测试通过,重构代码;然后再开始新一轮过程。
项目前期的几个月非常好,所有的事情都很顺利,我们有测试可以证明代码工作正常。但是随着时间的推移,需求发生了变化。我们被迫修改代码以适应新的需求,但是这样一来,测试失败了,需要修复。产品代码还是可以正常工作的,但是我们编写的测试过于脆弱,代码中任何微小的改变都会导致测试失败,哪怕代码工作正常。修改类或方法中的代码成了一项令人生畏的任务,因为同时还需要修复所有相关的单元测试。
更糟糕的是,因为有些人离开了这个项目,没有人知道他们测试的是什么,也不知道如何维护他们的测试,这些测试就无法使用了。我们给单元测试方法起的名字不够清楚,还有的测试互相依赖。最后的结果是,项目才开始不到6个月,我们就扔掉了大部分的测试。
这个项目是个悲剧,我们让自己编写的测试造成的损失比带来的收益多。从长远来看,维护和理解这些测试花费的时间,超过了它们能为我们节省的时间,因此我们停止使用它们了。我此后又参加过别的项目,这些项目中的单元测试做得好一些,我们使用这些测试获得了很大的成功,节省了大量的调试和集成时间。从那第一个失败的项目之后,我一直在整理单元测试的最佳实践,并在之后的项目中应用。在每个工作过的项目中,我总能找到更多的最佳实践。
理解如何编写单元测试,以及如何使它们可维护、可读和可靠,是这本书的内容,不管你使用的是何种语言或集成开发环境(IDE)。这本书涵盖了编写单元测试的基本知识,然后讲解交互测试基础,介绍了在真实世界中编写、管理和维护单元测试的最佳实践。

仕様

ブランド Jingdong book
ブランドテリトリー China

免責声明

商品の価格、パッケージ、仕様などの情報は、事前に通知することなく変更される場合があります。私たちは商品情報を迅速に更新するよう努力していますが、実際に受け取った商品を基準にしてください。商品を利用する前に、常に商品に付属するラベル、警告、および説明を読んでください。

利用規約の全文を見ます
お気に入りに追加
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
数量
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
JD@CHINAによって販売します
配送先
{{ __("Ship to United States only") }}
69以上のご注文は送料無料
正規保証

カートに入れました

ショッピングを続ける

おすすめアイテム

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

クーポン

{{ coupon.coupon_name_new | formatCurrency }}
受け取る 受取済み 受け取る終わりました
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
間もなく期限切れ: {{ formatTime(coupon.use_end_time) }}

このアイテムを友達と共有します

Yamiギフトカード特別価格

ギフトカードで支払えば、ギフトカード特別価格が得られます

規則説明

ギフトカード特別価格は、一部商品の特別割引オファーです;

ギフトカード特別価格の商品を購入する場合、決済時に電子ギフトカードで相殺し、ギフトカードの残高が註文したギフトカード特別価格商品の合計価格を支払うのに十分であれば、ギフトカード特別価格を適用することができます;

ギフトカードを利用しない場合、あるいはギフトカードの残高が前項に述べた要件を満たさない場合、ギフトカード特別価格を適用することができません。通常の販売価格で計算されることになり、これらの商品を購入することができます。

ギフトカード特別価格の商品を購入した場合、残高が足りない場合は、カートページまたは決済ページの「チャージ」ボタンをクリックしてギフトカードへの購入とチャージを行うことができます。

もし商品はギフトカード特別価格を持つならば、「特別」の特殊価格表記を表示します;

その他の質問や懸念がある場合は、いつでもカスタマーサービスにお問い合わせください;

Yamibuyは最終解釈権を有します。

Yamiによって販売します

サービス保証

Yami $49以上で送料無料
Yami 返品・交換保証
Yami アメリカから発送

配送情報

  • アメリカ

    スタンダード配送料 $5.99 (アラスカ、ハワイを除く)、最終価格が $49 以上で送料無料

    地方発送 $5.99 (カリフォルニア、ニューヨーク、ニュージャージー、マサチューセッツ、ペンシルベニア、上記州の一部地域); 最終価格が $49 以上で送料無料

    2 日以内の配送 (アラスカとハワイを含む) は送料 $19.99 からです

返品・交換ポリシー

Yamiはお客様が安心して購入できるように努めています。Yamibuy.comから出荷されたほとんどの商品は、受領後30日以内に返品可能です(食品、ドリンク、スナック、乾物、健康補助食品、新鮮な食料品および生鮮食品は、損傷または品質の問題がある場合、受領後7日以内に返品可能です。すべてのお客様に安全で高品質の商品を提供するために、美容製品については、品質の問題ではない限り、開封または利用後の返金や返品は対応できません。一部の商品には異なるポリシーまたは要件がありますので、特別な商品については以下をご覧いただくか、Yamiカスタマーサービスにお問い合わせください)。
ご理解とご支持に感謝します。

利用規約の全文を見ます

Yamiによって販売します

Yamibuy 電子ギフトカードの利用規約

購入時に自動チャージを選択した場合、注文完了後にギフトカードが自動的にアカウントにチャージされます;

購入時にメール送信を選択した場合、注文完了後にシステムが自動的にカード番号とパスワードを入力したメールアドレスに送信します;

メールを送信する際、どのユーザーもメールに送られてきたカード番号とパスワードを使用してギフトカードをチャージできますので、メール情報をしっかり保管してください。

メール受信に問題がある場合は、カスタマーサービスに連絡して処理してもらってください;

メールを送信する際、ギフトカードが交換されていない場合は、メールを再発行することができます。他のユーザーにすでに交換されている場合は、補償することはできません;

Yamibuyの電子ギフトカードは、自営または第三者商品の購入に使用できます;

Yamibuyの電子ギフトカードには有効期限がなく、長期にわたって有効です;

Yamiの電子ギフトカードの金額は、複数回に分けて使用することができます;

Yamiの電子ギフトカードの業務規則の最終的な解釈権は、Yamiウェブサイトに帰属します。

返品・交換ポリシー

既に利用された電子ギフトカードは返金不可です。

販売元: JD@CHINA

サービス保証

Yami $49以上で送料無料
Yami 最高のアフターサービス
Yami 米国本土から発送

配送情報

  • アメリカ

    スタンダード配送料 $5.99 (アラスカ、ハワイを除く)、最終価格が $49 以上で送料無料

    地方発送 $5.99 (カリフォルニア、ニューヨーク、ニュージャージー、マサチューセッツ、ペンシルベニア、上記州の一部地域); 最終価格が $49 以上で送料無料

    2 日以内の配送 (アラスカとハワイを含む) は送料 $19.99 からです

返品・交換ポリシー

商品到着後30日以内であれば返品が可能です。返品される商品は、購入時の請求書の原本を含む、元の梱包のまま新品である必要があります。お客様の費用負担で製品を返品してください。

JD@CHINAによって販売します

サービス保証

Yami $以上の店舗間注文: 送料無料
Yami 30日間返品・交換保証

Yami-中国集荷倉庫

Yamiが中国から厳選し、各優秀店舗の商品をYami中国統合センターに集めて、パッケージをまとめて一度に国際郵送でお客様の住所までお届けします。店舗間で$69以上になれば、送料無料になります。複数の販売者が提供する幅広い商品から選び、店舗間送料無料か低い送料を手軽に楽しめます。

返品・交換ポリシー

30日以内の返品・交換保証を提供します。商品は未使用の元のパッケージに入れられ、購入証明書が添付される必要があります。商品の品質上の問題、間違った配送、または配送漏れなど、販売者によって引き起こされたミスについては、返金処理されます。その他の理由による返品・交換の送料はお客様ご負担となります。すべての商品は長距離を輸送するため、内部品質に影響しない簡易包装のプレスや摩耗等が発生する場合、返品・交換は致しかねます。

配送情報

Yami 中国集荷 Consolidated Shippingの送料は$ 9.99 ($69以上のご注文は送料無料)

中国の販売業者は、ご注文後 2 営業日以内に商品を配達します、すべての荷物は Yami 中国集荷センターに到着し (特別な状況および中国の特定法定休日を除く)、そこで荷物は混載され、 UPSで米国に配送されます。中国から米国への UPS の平均配達時間は約 10 営業日で、直送の追跡番号に基づいていつでも追跡できます。感染拡大の影響で、現在の物流は約5日遅れる可能性があります。パッケージには顧客の署名が必要です。署名されない場合、パッケージが紛失するリスクはお客様が負うことになります。

JD@CHINAによって販売します

サービス保証

69以上のご注文は送料無料
正規保証

配送情報

Yami Consolidated Shipping送料$9.99($69以上のご注文は送料無料になる)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

Yamiポイント情報

すべての商品は、 Yamibuy.com のプロモーションまたはポイント イベントの対象外となります。

返品・交換ポリシー

商品到着後30日以内であれば返品が可能です。返品される商品は、購入時の請求書の原本を含む、元の梱包のまま新品である必要があります。お客様の費用負担で製品を返品してください。

Yami

Yamiアプリをダウンロードします

トップに戻ります

おすすめアイテム

ブランドについて

Jingdong book

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

レビュー{{'('+ commentList.posts_count + ')'}}

商品レビューを書いて、他のユーザーを助ける最初の人になりましょう。

レビューを書く
{{ totalRating }} レビューを書く
  • {{i}}星

    {{i}} 星

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}非表示にします

{{ strLimit(comment,800) }}すべて見る

Show Original

{{ comment.content }}

Yami
すべてを表示します

{{ formatTime(comment.in_dtm) }} 購入済み {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}非表示にします

{{ strLimit(comment,800) }}すべて見る

Show Original

{{ comment.content }}

Yami
すべてを表示します

{{ formatTime(comment.in_dtm) }} 購入済み {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

関連するコメントはありません~

レビュー詳細

Yami Yami

{{ showTranslate(commentDetails) }}非表示にします

{{ strLimit(commentDetails,800) }}すべて見る

Show Original

{{ commentDetails.content }}

Yami
すべてを表示します

{{ formatTime(commentDetails.in_dtm) }} 購入済み {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

最低でも単語一つを入力してください

コメント{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}非表示にします

{{ strLimit(reply,800) }}すべて見る

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

最低でも単語一つを入力してください

キャンセル

これまでのコメントは以上です!

レビューを書きます
商品評価

コメントをお願いします

  • 素敵なユーザーネームは、あなたのコメントをより人気のあるものにします!
  • ここでニックネームを変更すると、アカウントのニックネームも同じに変更されます。
商品レビューをありがとうございます。
あなたの素晴らしいレビューは私たちのコミュニティがより良いアジア商品を見つけるのに役立ちます。

通報します

キャンセル

本当にレビューを削除してもよろしいですか?

キャンセル

過去に閲覧した商品

ブランドについて

Jingdong book