คำถามติดแท็ก testing

4
คุณจะทดสอบเงื่อนไขการแข่งขันในฐานข้อมูลได้อย่างไร
ฉันพยายามเขียนรหัสฐานข้อมูลเพื่อให้แน่ใจว่าไม่มีเงื่อนไขการแข่งขันเพื่อให้แน่ใจว่าฉันได้ล็อกแถวหรือตารางที่ถูกต้อง แต่ฉันมักจะสงสัยว่า: รหัสของฉันถูกต้องหรือไม่ เป็นไปได้ไหมที่จะบังคับให้เงื่อนไขการแข่งขันใด ๆ ฉันต้องการแน่ใจว่าหากพวกเขาเกิดขึ้นในสภาพแวดล้อมการผลิตแอปพลิเคชันของฉันจะทำสิ่งที่ถูกต้อง ฉันมักจะรู้ว่าการค้นหาพร้อมกันที่น่าจะทำให้เกิดปัญหา แต่ฉันไม่รู้ว่าจะบังคับให้พวกเขาทำงานพร้อมกันเพื่อดูว่าพฤติกรรมที่ถูกต้องเกิดขึ้น (เช่นฉันใช้ล็อคประเภทที่ถูกต้อง) ว่าข้อผิดพลาดถูกต้อง โยน ฯลฯ หมายเหตุ: ฉันใช้ PostgreSQL และ Perl ดังนั้นหากไม่สามารถตอบได้โดยทั่ว ๆ ไปก็น่าจะได้รับการติดซ้ำเช่นนี้ อัปเดต:ฉันต้องการถ้าการแก้ปัญหาเป็นแบบโปรแกรม ด้วยวิธีนี้ฉันสามารถเขียนการทดสอบอัตโนมัติเพื่อให้แน่ใจว่าไม่มีการถดถอย

4
เวิร์กโฟลว์ของคุณในการวางแผนการย้ายข้อมูลเป็นอย่างไร
หลายครั้งที่ฉันถูกนำเข้ามาในตอนท้ายของความพยายามในการพัฒนาซอฟต์แวร์และได้รับการบอกบางอย่างเช่น"โอเคเรามีรหัสใหม่ทั้งหมดและต้องมีตารางเพื่อเปลี่ยนและย้ายข้อมูล" ดูเหมือนว่าทุกครั้งที่มันเป็นสถานการณ์แบบ one-off, shoot-from-the-hip ฉันรู้สึกว่านี่เป็นทักษะที่อ่อนแอที่สุดของฉันที่ตั้งเป็น DBA ฉันต้องการที่จะได้รับในบางรูปแบบสำหรับการเข้าใกล้การจัดการและการทดสอบการโยกย้ายข้อมูล โปรดยึดถือแนวทางปฏิบัติที่ดีที่สุดและ / หรือสถานที่ที่ฉันจะได้รับสื่อการเรียนรู้เพื่อช่วยให้ฉันดีขึ้นในด้านนี้

1
ความแตกต่างของประสิทธิภาพระหว่าง MySQL และ PostgreSQL สำหรับสคีมา / คิวรีเดียวกัน [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันเป็นมือใหม่ DBA และฉันมีประสบการณ์ใน Microsoft SQL Server แต่ฉันต้องการข้ามไปยัง FLOSS ฉันเริ่มต้น บริษัท และเราพัฒนาแอพ (PHP) ด้วยแบ็กเอนด์ Postgres และเราทำการทดสอบบางอย่างเปรียบเทียบกับ MySQL ด้วย เราสังเกตว่า MySQL นั้นเร็วกว่า PostgreSQL สองเท่า ฉันทำการทดสอบประสิทธิภาพที่เป็นรูปธรรม: คอลัมน์เดียวกันในตารางที่มีประเภทข้อมูลคอลัมน์เทียบเท่า จำนวนแถวเท่ากัน ดัชนีเดียวกันในทั้งสอง (รวมคีย์หลัก) โหลด CPU ไม่ได้ใช้งานและเครื่อง Postgres ดีกว่ามาก และแบบสอบถามเดียวกัน (ชัด) ผมทำอะไรผิดหรือเปล่า? PS: ฉันอ่าน "howtos" มากมายเกี่ยวกับการปรับแต่งประสิทธิภาพของเอ็นจิ้นฐานข้อมูล PS (2): เรากำลังใช้ InnoDB …


3
การทดสอบความสามารถในการปรับขนาดของกระบวนงานที่เก็บไว้
ฉันมีแอปพลิเคชันอีเมลที่จะถูกส่งต่อไปยัง UI จำนวนข้อความใหม่สำหรับผู้ใช้ที่ระบุในการโหลดหน้าเว็บแต่ละหน้า ฉันมีหลายรูปแบบของสิ่งที่ฉันกำลังทดสอบในระดับ DB แต่ทั้งหมดจะถูกสรุปโดยการเรียก proc ที่เก็บไว้ ฉันพยายามกดฐานข้อมูลเพื่อดูว่าจุดแตกหัก (# ของคำขอต่อวินาที) จะเป็นอย่างไร โดยสรุปฉันมีตารางเช่น userId นี้ newMsgCount พร้อมกับดัชนีคลัสเตอร์บน userId SQL ควรสามารถตอบสนองต่อเซิร์ฟเวอร์เหล่านี้หลายร้อยหรือหลายพันต่อวินาที ฉันคิดว่าคนเกียจคร้านเป็นแอป. NET ของฉัน ฉันจะทำให้การทดสอบนี้เป็นผลการทดสอบที่ดีโดยใช้ประสิทธิภาพของ SQL ได้อย่างไร มีเครื่องมือสำหรับสิ่งนี้ที่ฉันสามารถให้ชื่อ proc ที่เก็บไว้และ param เพื่อให้ pund DB ของฉันหรือไม่ ฉันต้องการดูว่า DB สามารถส่งคืนนาทีได้หรือไม่ จาก 250 คำตอบต่อวินาที

4
มีเครื่องมืออะไรบ้างในการสร้างข้อมูลทดสอบสำหรับ SQL Server
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ อย่างที่คุณเห็นจากคำถามอื่นของฉันการสร้างข้อมูลทดสอบเป็นธีมของฉันในตอนนี้ ณ จุดนี้ฉันยังคงสร้างข้อมูลทดสอบด้วยมือ อย่างไรก็ตามกระบวนการนี้จะสร้างข้อมูลจำนวนเล็กน้อยเสมอ (โดยปกติจะเป็นแถวสิบห้าแถว) เนื่องจากเป็นกระบวนการที่ทำด้วยตนเอง มีเครื่องมือใดที่ทำให้กระบวนการนี้เป็นอัตโนมัติหรือไม่ โดยเฉพาะฉันต้องการสร้างแถว 1mil +

9
มีเครื่องมืออะไรในการปิดบังข้อมูล (MySQL, Linux) [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับผู้ดูแลฐานข้อมูล Exchange Exchange ปิดให้บริการใน5 ปีที่ผ่านมา ฉันกำลังมองหาเครื่องมือปิดบังข้อมูล (ฟรีอย่างดีโอเพนซอร์ส) มีอยู่จริงไหม? หมายเหตุ: คำถามที่เกี่ยวข้องนี้เกี่ยวข้องกับเครื่องมือในการสร้างข้อมูลทดสอบ แต่ในคำถามนี้ฉันสนใจที่จะเริ่มต้นด้วยข้อมูลจริงและปิดบังเพื่อใช้ในการทดสอบโดยไม่สูญเสียความสัมพันธ์พิเศษใด ๆ ที่ทำให้น่าสนใจสำหรับวัตถุประสงค์ในการทดสอบ ข้อมูลที่สร้างขึ้นนั้นใช้ได้สำหรับการทดสอบบางอย่าง แต่ข้อมูลในโลกแห่งความเป็นจริงจะทำให้เกิดปัญหาที่คุณไม่เคยคาดคิดมาก่อน เครื่องมือในการสร้างชุดข้อมูลขนาดใหญ่ของข้อมูลการทดสอบ
14 mysql  linux  testing 

2
เคยตกลงที่จะไม่ทดสอบคุณสมบัติหรือไม่?
มีจุดใดบ้างที่คุณคุ้นเคยกับภาษา / ฐานข้อมูล / ระบบของคุณซึ่งไม่จำเป็นต้องทดสอบคุณสมบัติใหม่ / การกำหนดค่า / แบบสอบถาม / ฯลฯ โดยการทดสอบแบบมีอยู่ / จำลองก่อนนำมาใช้ในระบบของคุณ (โดยเฉพาะเกี่ยวกับคุณสมบัติที่แก้ไขข้อมูล) หรือมันเป็นเสมอที่สำคัญในการทดสอบแบบสอบถามใหม่โดยการจำลองในสภาพแวดล้อมการทดสอบ ? หากต้องการระบุเพิ่มเติมเป็นที่ชัดเจนว่าปลอดภัยที่สุดเสมอที่จะทดสอบ อย่างไรก็ตามมีวิธีการพิจารณาว่าเมื่อใดที่ความเสี่ยงมีน้อยมากจนการทดสอบนั้นไม่คุ้มค่ากับความพยายาม? อีกวิธีหนึ่งของการใช้ถ้อยคำที่: เมื่อหรือมันคือเคยเป็นมืออาชีพทางปฏิบัติที่จะใช้ความเสี่ยงในการดำเนินการวัดคุณลักษณะหรือไม่ นอกจากนี้สมมติว่าทุกอย่างมีการสำรองข้อมูลดังนั้นกรณีที่เลวร้ายที่สุดข้อมูลอาจถูกกู้คืนด้วยความพยายาม ใครบางคนสามารถกล่าวถึงประสบการณ์ที่เชี่ยวชาญและเฉพาะเจาะจงเพื่อแก้ไขปัญหานี้ได้? โปรดรวมการอ้างอิงตามความเหมาะสม / เป็นไปได้

3
สภาพแวดล้อมการจัดเตรียมฐานข้อมูลสำหรับบุคลากรที่ไม่ใช่ด้านไอที
ฉันกำลังเสนอสภาพแวดล้อมการจัดเตรียมฐานข้อมูลให้แผนกไอทีของฉัน แนวคิดก็คือบุคคลที่ไม่ใช่ด้านไอทีอย่างฉัน (นักวิเคราะห์ข้อมูลสาธารณะ) จะมีที่สำหรับทดสอบวิธีแก้ปัญหาแล้วนำไปใช้ในสภาพแวดล้อมจริงหรือขอให้ฝ่ายไอทีนำไปใช้หากจำเป็น มีเหตุผล / สถานการณ์สองสามข้อที่สภาพแวดล้อมนี้จะเป็นประโยชน์: ฉันมีสิทธิ์ฐานข้อมูลบางขั้นพื้นฐานในสภาพแวดล้อมฐานข้อมูลอยู่ของเรา ( create table, create viewฯลฯ ) ฉันจะทำให้การเปลี่ยนแปลงสคีมาประมาณสัปดาห์ละครั้ง แต่ดูเหมือนว่าบ้าสำหรับผมที่จะทดสอบและดำเนินการเปลี่ยนแปลงเหล่านี้ในสภาพแวดล้อมที่อยู่ มีการอ้างอิงที่นับไม่ถ้วนในฐานข้อมูลดังนั้นหากมีสิ่งใดผิดพลาดอาจเป็นหายนะ ฉันค่อนข้างจะทดสอบสิ่งต่าง ๆ ล่วงหน้าในสภาพแวดล้อมที่แยกต่างหาก ฉันไม่มีสิทธิ์พิเศษขั้นสูงบางอย่างเช่นcreate triggerหรือcreate functionในฐานข้อมูลสด นี่เป็นเรื่องปกติ แต่ฉันมีปัญหาเล็กน้อยที่สามารถแก้ไขได้โดยทริกเกอร์และ / หรือฟังก์ชั่น ฉันวางแผนที่จะเสนอว่าฉันจะได้รับอนุญาตเหล่านี้ในสภาพแวดล้อมการจัดเตรียมเพื่อให้ฉันสามารถพัฒนาและทดสอบความคิดบางอย่างและถ้าพวกเขาทำงานให้เสนอว่าไอทีจะนำไปใช้ในสภาพแวดล้อมจริง โดยทั่วไปแผนกไอทีของฉันไม่มีเวลาหรือทรัพยากรในการพัฒนาโซลูชันสำหรับฉัน มันง่ายจริงๆ ดังนั้นถ้าฉันสามารถทำงานได้ด้วยตัวเองปัญหาของฉันก็มีแนวโน้มที่จะได้รับการแก้ไข 'สภาพแวดล้อมการจัดเตรียมสำหรับบุคลากรที่ไม่ใช่ด้านไอที' ดูเหมือนจะเป็นวิธีที่ดีพอสำหรับฉัน แต่โดยความจริงแล้วฉันเพิ่งคิดขึ้นมา ฉันไม่มีความคิดว่ามันจะเกิดขึ้นได้อย่างไรในโลกไอที / ฐานข้อมูล มีการฝึกฝนด้านไอที / ฐานข้อมูลใด ๆ ที่เหมาะสมกับสถานการณ์นี้หรือไม่? (ฉันอยู่ในแนวทางที่ถูกต้องเมื่อเสนอสภาพแวดล้อมการจัดเตรียมฐานข้อมูลสำหรับบุคลากรที่ไม่ใช่ด้านไอทีหรือไม่)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.