Sobes.tech
Middle+

რა გამოიყენებოდა მრავალმხრივი ფორმების სამუშაოდ — დადასტურებისთვის, რა პრობლემები შეხვდათ, როგორ ტესტავდნენ?

sobes.tech AI

პასუხი AI-სგან

მრავალმდგომარეობიანი ფორმების მუშაობისთვის ხშირად გამოიყენება ვალიდაციის ბიბლიოთეკები, როგორიცაა Yup, Joi ან საკუთარი გადაწყვეტილებები, რომლებიც დაფუძნებულია React Hook Form ან Formik-ზე. მთავარი სირთულე — სწორად ვალიდაცია შერწყმული სტრუქტურებისა და დინამიკურად ცვალებადი ველების.

შეხვედრილი პრობლემები:

  • შერწყმული მასივებისა და ობიექტების ვალიდაცია, განსაკუთრებით დინამიკური დამატებისა/ამოღების დროს.
  • ასინქრონული ვალიდაცია (მაგ., მონაცემების უნიკალურობის შემოწმება სერვერზე).
  • შეცდომების მართვა და მათი ჩვენება თითოეულ ველზე.

ტესტებისთვის ვიყენებ Jest-ის ერთეულ ტესტებს, სადაც ვამოწმებ ვალიდაციის სქემის სისწორეს სხვადასხვა მონაცემებისთვის, ასევე end-to-end (Cypress) ტესტებს ფორმის ქცევის შესამოწმებლად ბრაუზერში.

Yup-ის მაგალითი შერწყმული სტრუქტურისთვის:

const schema = yup.object().shape({
  users: yup.array().of(
    yup.object().shape({
      name: yup.string().required(),
      contacts: yup.array().of(
        yup.object().shape({
          type: yup.string().required(),
          value: yup.string().required(),
        })
      )
    })
  )
});

// მონაცემების ვალიდაცია
schema.validate(data).catch(err => console.log(err.errors));