পরীক্ষার তথ্য হিসাবে সংযোজন সেট কিভাবে ব্যবহার করবেন

আমি একটি ফাংশন সেট এবং স্বাভাবিক মান একটি সেট থেকে একটি tuple সঙ্গে একটি ফাংশন পরীক্ষা করতে চাই। উদাহরণস্বরূপ, একটি ফাংশন পরীক্ষা করার সময় যে সত্য প্রদান করে যখন তিনটি দৈর্ঘ্য প্রদান করে যা একটি বৈধ ত্রিভুজ গঠন করে, আমি নির্দিষ্ট ক্ষেত্রে, নেতিবাচক / ছোট / বড় সংখ্যার, মানগুলি নিবিড়ভাবে -ভারফ্লোভ ইত্যাদিতে থাকি। আরো কি কি, প্রধান উপায়ে এই তথ্যগুলির সংমিশ্রণ সৃষ্টি করা হয়, বা পুনরাবৃত্তি ছাড়াই, পরীক্ষার তথ্য সেট করার জন্য।

(inf,0,-1), (5,10,1000), (10,5,5), (0,-1,5), (1000,inf,inf),
...

একটি নোট হিসাবে: আমি আসলে এই উত্তর জানি, কিন্তু এটি অন্যদের জন্য সহায়ক হতে পারে, এবং এখানে মানুষের জন্য একটি চ্যালেঞ্জ! - পরে আমার উত্তর পোস্ট করবে।

0
যোগ সম্পাদিত
মতামত: 1
এটি একটি ওয়ার্ডপ্রেস প্রশ্ন নয়। অন্তত, আপনি এটা জিজ্ঞাসা করেছেন উপায় না।
যোগ লেখক Anonymous User, উৎস
এটি একটি ওয়ার্ডপ্রেস প্রশ্ন নয়। অন্তত, আপনি এটা জিজ্ঞাসা করেছেন উপায় না।
যোগ লেখক Anonymous User, উৎস
মাইক সঠিক, আরও তথ্য অন্যথায় মূঢ় উত্তর যেমন "আপনার একটি নতুন ইমেইল আছে!" আমার মনে আসে এবং আমি মনে করি না যে এটি সহায়ক
যোগ লেখক steve_mtl, উৎস
Abacus github নোড। জেএস, পাইথন, পিএইচপি, অ্যাকশনস্ক্রিপ্টের জন্য একটি সমন্বয়ক লাইব্রেরি (পি আমি লেখক )
যোগ লেখক Nikos M., উৎস
হাই @ লিয়া: দয়া করে আমাদের আরো বিস্তারিত দিন যাতে 1।) আমরা আপনার এবং 2 এর সাহায্যে একটি সম্ভাব্য সুযোগ লাভ করতে পারি।) যাতে ভবিষ্যতে কনফিগারেশন এবং একই সমস্যা রয়েছে এমন অন্যান্য ব্যক্তিদের এই প্রশ্নের উত্তর দেওয়া হতে পারে। উদাহরণস্বরূপ, আমি অনুমান করছি আপনি একটি প্লাগইন ব্যবহার করছেন? তাই, এটা কি? আপনি কোন সেটিং ব্যবহার করেছেন? আপনি কোথায় হোস্টিং হয়? এবং প্রাসঙ্গিক কিছু হতে পারে এমন কিছু আগাম ধন্যবাদ.
যোগ লেখক MikeSchinkel, উৎস

11 উত্তর

যদি আপনি WP-DB পরিচালক প্লাগইন ব্যবহার করছেন, তাহলে তার বিকল্পগুলিতে যান এবং ম্যানুয়ালি ব্যাকআপ তৈরি করুন। যদি এটি ব্যর্থ হয়, ত্রুটি বার্তাটি পরীক্ষা করে দেখুন এবং ভুল কি হতে পারে তা বের করতে চেষ্টা করুন। যদি আপনি এটি খুঁজে বের করতে না পারেন, এখানে ত্রুটি বার্তা পোস্ট করুন।

ম্যানুয়াল ব্যাকআপ জরিমানা যদি, সম্ভবত ই-মেইল সেটআপ সঙ্গে একটি ত্রুটি আছে। সমস্ত ই-মেইল সেটিংস চেক করুন এবং তারা সঠিক কিনা তা নিশ্চিত করুন। কোন ই-মেইল প্রদানকারী আপনি ই-মেইল পাঠাতে ব্যবহার করছেন (কি এসএমটিপি সার্ভার)? আপনি কোন ই-মেইল সরবরাহকারী ই-মেইলগুলি (কী POP3 এবং IMAP সার্ভার) পেতে চান?

আপনি যদি WP-DB ম্যানেজার ব্যবহার না করেন, তাহলে আপনাকে এই ব্যাকআপগুলি এবং আপনার যে তথ্যগুলি আমাকে এবং অন্যান্যদের দ্বারা সরবরাহ করা হয়েছে তা জানানো দরকার।

1
যোগ

যদি আপনি WP-DB পরিচালক প্লাগইন ব্যবহার করছেন, তাহলে তার বিকল্পগুলিতে যান এবং ম্যানুয়ালি ব্যাকআপ তৈরি করুন। যদি এটি ব্যর্থ হয়, ত্রুটি বার্তাটি পরীক্ষা করে দেখুন এবং ভুল কি হতে পারে তা বের করতে চেষ্টা করুন। যদি আপনি এটি খুঁজে বের করতে না পারেন, এখানে ত্রুটি বার্তা পোস্ট করুন।

ম্যানুয়াল ব্যাকআপ জরিমানা যদি, সম্ভবত ই-মেইল সেটআপ সঙ্গে একটি ত্রুটি আছে। সমস্ত ই-মেইল সেটিংস চেক করুন এবং তারা সঠিক কিনা তা নিশ্চিত করুন। কোন ই-মেইল প্রদানকারী আপনি ই-মেইল পাঠাতে ব্যবহার করছেন (কি এসএমটিপি সার্ভার)? আপনি কোন ই-মেইল সরবরাহকারী ই-মেইলগুলি (কী POP3 এবং IMAP সার্ভার) পেতে চান?

আপনি যদি WP-DB ম্যানেজার ব্যবহার না করেন, তাহলে আপনাকে এই ব্যাকআপগুলি এবং আপনার যে তথ্যগুলি আমাকে এবং অন্যান্যদের দ্বারা সরবরাহ করা হয়েছে তা জানানো দরকার।

1
যোগ

অবশ্যই, বিশেষ করে এই permutations / সংমিশ্রণ অনেক সঙ্গে আচরণ আমি স্পষ্টভাবে প্রথম পাস একটি সমস্যা হতে পারে দেখতে পাবেন।

পাইথনে আকর্ষণীয় প্রয়োগ, যদিও আমি "অ্যালগোরিদম 515" (নীচের দেখুন) উপর ভিত্তি করে সি এবং ওকামলে একটি চমৎকার এক লিখেছিলাম। তিনি ফোর্টারনে তার লেখেন কারণ এটি সব "অ্যালগরিদম XX" পত্রিকার জন্য সাধারণ ছিল, ভাল, সেই সমাবেশ বা সি। আমি এটি পুনরায় লিখতে ছিল এবং অ্যারে সঙ্গে কাজ করার জন্য কিছু ছোট উন্নতি করতে না নম্বর রেঞ্জ নয়। এই এক র্যান্ডম অ্যাক্সেস, আমি এখনও Knuth 4th ভলিউম fascicle 2 উল্লিখিত যারা কিছু ভাল বাস্তবায়ন পাওয়ার জন্য কাজ করছি। আমি এই পাঠক কিভাবে কাজ করে একটি ব্যাখ্যা করব। যদিও কেউ আগ্রহী হলে, আমি কিছু লিখতে আপত্তি করবে না।

/** [combination c n p x]
 * get the [x]th lexicographically ordered set of [p] elements in [n]
 * output is in [c], and should be sizeof(int)*[p] */
void combination(int* c,int n,int p, int x){
    int i,r,k = 0;
    for(i=0;i< x);
        k = k - r;
    }
    c[p-1] = c[p-2] + x - k;
}

~ "অ্যালগরিদম 515: লেক্সিকোগ্রাফিকাল সূচক থেকে একটি ভেক্টর তৈরি"; Buckles, বি পি, এবং Lybanon, ম্যাথএমেটিক্যাল সফ্টওয়্যার উপর এম.সি.এম লেনদেন, ভল। 3, নং ২, জুন 1977।

0
যোগ
@ এমকিউবি অবশ্যই।
যোগ লেখক nlucaroni, উৎস
"স্ব-আত্মবিশ্বাসী" এটির জন্য একটি ভুল শব্দ। এটা "recursive" বলা হয় এবং এটি কম্পিউটার বিজ্ঞান একটি মৌলিক অংশ। প্রশ্নে "নির্বাচন" ফাংশনটি সি (এন, কে), en.wikipedia.org/wiki/Binomial_coefficient
যোগ লেখক nlucaroni, উৎস
এটা লক্ষ করা উচিত, যে x হল 1 ভিত্তিক, 0 ভিত্তিক হিসাবে কোনটি আশা করবে না।
যোগ লেখক Andrew Savinykh, উৎস
নির্বাচন করুন() কি করবেন? মূলত যেটি n-c [i] নির্বাচন করে p- (i + 1) 1 নির্বাচন করে?
যোগ লেখক mkb, উৎস
আমি দুঃখিত, আমি পছন্দ আচরণ অনুসরণ না। এটি আত্ম আত্মবিশ্বাসী হিসাবে সংজ্ঞায়িত মত শব্দ - পছন্দ করে নিন নির্বাচন করুন আপনি সহজ শর্তে এটি কি আমাকে বলতে পারে?
যোগ লেখক CuppM, উৎস
এমনকি সি অ্যারে উপাদানগুলি 1 ভিত্তিক এবং 0 ভিত্তিক নয় সেট হিসাবে উল্লেখ করা হচ্ছে বলে মনে হচ্ছে। ব্যাটটি বন্ধ করলে আমরা [i] ক্রমবৃদ্ধি করতে পারি, এটি কখনো 0 তম উপাদান নির্দেশ করে না। অথবা আমি কিছু অনুপস্থিত? অথবা ওপরে সি [i] -1 এর সাথে ইনভেস্ট করতে চেয়েছিলেন এবং বলুন (এন-সি [i] -1, ...) বলুন?
যোগ লেখক Subu Sankara Subramanian, উৎস

আকর্ষণীয় প্রশ্ন!

আমি প্যাথনকে অনুসরণ করে এইরকম কিছু করতে চাই। সবচেয়ে কঠিন অংশ সম্ভবত প্রথম পাস যাচাইকরণ, i.e. যদি f (1,2,3) সত্য প্রদান করে তাহলে , এটি কি সঠিক ফলাফল? একবার আপনি যাচাই করা হলে, তারপর এটি রিগ্রেশন পরীক্ষার জন্য একটি ভাল ভিত্তি।

সম্ভবত এটি পরীক্ষা ক্ষেত্রে একটি সেট তৈরি করা ভাল ধারণা যা আপনি জানেন যে সমস্ত সত্য (উদাহরণস্বরূপ এই ত্রিভুজ কেস জন্য 3,4,5), এবং পরীক্ষা ক্ষেত্রে একটি সেট আপনি জানেন যে সব মিথ্যা (যেমন 0,1 , INF)। তারপর আপনি আরও সহজে পরীক্ষাগুলি সঠিক যাচাই করতে পারেন।

# xpermutations from http://code.activestate.com/recipes/190465
from xpermutations import *

lengths=[-1,0,1,5,10,0,1000,'inf']
for c in xselections(lengths,3):        # or xuniqueselections
    print c
(-1,-1,-1);
(-1,-1,0);
(-1,-1,1);
(-1,-1,5);
(-1,-1,10);
(-1,-1,0);
(-1,-1,1000);
(-1,-1,inf);
(-1,0,-1);
(-1,0,0);
...
0
যোগ

আমি মনে করি আপনি সারি পরীক্ষা অ্যাট্রিবিউট এর সাথে এটি করতে পারেন (উপলব্ধ MbUnit এবং NUnit এর পরবর্তী সংস্করণ) যেখানে আপনি একক পরীক্ষা জমা দিতে একাধিক সেট নির্দিষ্ট করতে পারেন।

0
যোগ

ব্র্যান্ডের নতুন Python 2.6 দিয়ে, আপনার ITERTOLS মডিউলটির সাথে একটি স্ট্যান্ডার্ড সমাধান আছে যা কার্টেসিয়ান পণ্যটি পুনরাবৃত্তি করে:

import itertools

print list(itertools.product([1,2,3], [4,5,6]))
   [(1, 4), (1, 5), (1, 6),
   (2, 4), (2, 5), (2, 6),
   (3, 4), (3, 5), (3, 6)]

আপনি একটি পুনরাবৃত্ত এবং নিজেই সঙ্গে পণ্য সঞ্চালন করতে একটি "পুনরাবৃত্তি" যুক্তি প্রদান করতে পারেন:

print list(itertools.product([1,2], repeat=3))
[(1, 1, 1), (1, 1, 2), (1, 2, 1), (1, 2, 2),
(2, 1, 1), (2, 1, 2), (2, 2, 1), (2, 2, 2)]

আপনি সমন্বয় সহ কিছু সংশোধন করতে পারেন:

print list(itertools.combinations('123', 2))
[('1', '2'), ('1', '3'), ('2', '3')]

এবং আদেশ যদি, permutations আছে:

print list(itertools.permutations([1,2,3,4], 2))
[(1, 2), (1, 3), (1, 4),
   (2, 1), (2, 3), (2, 4),
   (3, 1), (3, 2), (3, 4),
   (4, 1), (4, 2), (4, 3)]

অবশ্যই সব যে শীতল জিনিস ঠিক একই জিনিস না, কিন্তু আপনি আপনি সমস্যার সমাধান করার জন্য একটি উপায় বা অন্য তাদের ব্যবহার করতে পারেন।

শুধু মনে রাখবেন আপনি একটি সেটের মধ্যে একটি tuple বা একটি তালিকা রূপান্তর এবং তদ্বিপরীত তালিকা (), tuple() এবং সেট() ব্যবহার করে রূপান্তর করতে পারেন।

0
যোগ

যদিও এটি অনেকগুলি পরীক্ষার তথ্য তৈরি করে এবং কি ঘটে তা দেখতে পাওয়া গেলে, এটি ব্যবহার করা ডেটা হ্রাস করার চেষ্টা করা আরও দক্ষ।

একটি সাধারণ QA দৃষ্টিকোণ থেকে, আপনি বিভিন্ন শ্রেণীবিভাজন ইনপুট চিহ্নিত করতে চাইবে। প্রতিটি ক্লাসিফিকেশন জন্য ইনপুট মান একটি সেট উত্পাদন এবং উপযুক্ত আউটপুট নির্ধারণ।

এখানে ইনপুট মানের ক্লাসের একটি নমুনা

  • ছোট সংখ্যাগুলির সাথে বৈধ ত্রিভুজ (1 বিলিয়ন, ২, বিলিয়ন, ২ বিলিয়ন)
  • বড় সংখ্যা সহ বৈধ ত্রিভুজ (0.000001, 0.00002, 0.00003)
  • বৈধ বক্রতা ত্রিভুজ যা 'প্রায়' ফ্ল্যাট (10, 10, 19.9999) এর মত
  • বৈধ ত্রিভুজ যা প্রায় 'ফ্ল্যাট' (10, 10, 0000001)
  • কমপক্ষে একটি নেতিবাচক মান সহ অবৈধ ত্রিভুজ
  • অবৈধ ত্রিভুজ যেখানে দুই পক্ষের সমষ্টি তৃতীয় সমান
  • অবৈধ ত্রিভুজ যেখানে দুই পক্ষের সমষ্টি তৃতীয় অপেক্ষা বৃহত্তর
  • ইনপুট মান যা অ-সাংখ্যিক

...

একবার আপনি এই ফাংশন জন্য ইনপুট ক্লাসিফিকেশন তালিকা সন্তুষ্ট হন, তারপর আপনি প্রকৃত পরীক্ষা তথ্য তৈরি করতে পারেন। সম্ভবত, এটি প্রতিটি আইটেমের সমস্ত ক্রম নির্ধারণের জন্য সহায়ক হবে। (যেমন (২3,4), (২,4,3), (3, ২4), (3,4২), (4, ২3), (4,3২)) সাধারণত, আপনি কিছু শ্রেণীবিন্যাস আপনি মিস (যেমন একটি ইনপুট প্যারামিটার হিসাবে ধারণা ধারণা) খুঁজে পাবেন।

কিছু সময়ের জন্য র্যান্ডম ডেটাও সহায়ক হতে পারে, এটি কোডে অদ্ভুত বাগ খুঁজে পেতে পারে, কিন্তু সাধারণত উত্পাদনশীল নয়।

সম্ভবত, এই ফাংশনটি কিছু নির্দিষ্ট প্রেক্ষিতে ব্যবহার করা হচ্ছে যেখানে অতিরিক্ত নিয়মাবলী প্রয়োগ করা হয়। (উদাহরণস্বরূপ, শুধুমাত্র পূর্ণসংখ্যা মান বা মানগুলি 0.01 বৃদ্ধি, ইত্যাদি থাকা আবশ্যক।) এইগুলি ইনপুট প্যারামিটারের শ্রেণিবদ্ধ তালিকা যোগ করে।

0
যোগ

এখানে একটি সম্ভাব্য সমস্যা: অন্যান্য জিনিসের মধ্যে, আপনার সার্ভারে আপনার ডিস্ক স্পেসের বাইরে নয় তা নিশ্চিত করুন। ব্যাকআপ প্রোগ্রামের জন্য কিছুটা স্থান প্রয়োজন হবে। এটাকে জিপ করুন এবং ডাটাবেসটি জিপ করুন যাতে এটি মেইল ​​করে।

0
যোগ

এখানে একটি সম্ভাব্য সমস্যা: অন্যান্য জিনিসের মধ্যে, আপনার সার্ভারে আপনার ডিস্ক স্পেসের বাইরে নয় তা নিশ্চিত করুন। ব্যাকআপ প্রোগ্রামের জন্য কিছুটা স্থান প্রয়োজন হবে। এটাকে জিপ করুন এবং ডাটাবেসটি জিপ করুন যাতে এটি মেইল ​​করে।

0
যোগ

আমি একই প্লাগইন (ইতিমধ্যে একটি দীর্ঘ সময়ের জন্য) ব্যবহার করে এবং এটি আমার 2-3 বার ঘটেছে আমি কারণ খুঁজে বের করতে সক্ষম ছিল না।

নিষ্ক্রিয়করণ এবং পুনঃসূচনা প্লাগইনটি প্রত্যেক ক্ষেত্রে আমার জন্য এটি স্থির করেছে।

0
যোগ

আমি একই প্লাগইন (ইতিমধ্যে একটি দীর্ঘ সময়ের জন্য) ব্যবহার করি এবং এটি হয়তো 2-3 বার আমার কাছে ঘটেছে। আমি কারণ খুঁজে বের করতে সক্ষম ছিল না।

নিষ্ক্রিয়করণ এবং পুনঃসূচনা প্লাগইনটি প্রত্যেক ক্ষেত্রে আমার জন্য এটি স্থির করেছে।

0
যোগ