docstr: Method：
  1. create a collection with partition key on invalid type fields
  2. verify the error raised
docstr_tok: ["Method\uff1a","1.","create","a","collection","with","partition","key","on","invalid","type","fields","2.","verify","the","error","raised"]
code: def test_partition_key_on_invalid_type_fields(self, field_type):
      """
      Method：
      1. create a collection with partition key on invalid type fields
      2. verify the error raised
      """
      self._connect()
      pk_field = cf.gen_int64_field(name="pk", is_primary=True)
      int8_field = cf.gen_int8_field(
          is_partition_key=(field_type == DataType.INT8)
      )
      int16_field = cf.gen_int16_field(
          is_partition_key=(field_type == DataType.INT16)
      )
      int32_field = cf.gen_int32_field(
          is_partition_key=(field_type == DataType.INT32)
      )
      bool_field = cf.gen_bool_field(
          is_partition_key=(field_type == DataType.BOOL)
      )
      float_field = cf.gen_float_field(
          is_partition_key=(field_type == DataType.FLOAT)
      )
      double_field = cf.gen_double_field(
          is_partition_key=(field_type == DataType.DOUBLE)
      )
      json_field = cf.gen_json_field(
          is_partition_key=(field_type == DataType.JSON)
      )
      int64_field = cf.gen_int64_field()
      string_field = cf.gen_string_field()
      vector_field = cf.gen_float_vec_field(
          is_partition_key=(field_type == DataType.FLOAT_VECTOR)
      )
      if field_type == DataType.BINARY_VECTOR:
          vector_field = cf.gen_binary_vec_field(
              is_partition_key=(field_type == DataType.BINARY_VECTOR)
          )
  
      err_msg = "Partition key field type must be DataType.INT64 or DataType.VARCHAR"
      schema = cf.gen_collection_schema(
          fields=[
              pk_field,
              int8_field,
              int16_field,
              int32_field,
              bool_field,
              float_field,
              double_field,
              json_field,
              int64_field,
              string_field,
              vector_field,
          ],
          auto_id=True,
          check_task=CheckTasks.err_res,
          check_items={"err_code": 2, "err_msg": err_msg},
      )
  
imports: import pytest
  from base.client_base import TestcaseBase
  from common import common_func
  from common import common_type
  from common.common_type import CaseLabel, CheckTasks
  from utils.util_pymilvus import *
label_desc: Use image node_id 8 for calling the TestPartitionKeyInvalidParams obj's underlying member method code with example usage: obj.test_partition_key_on_invalid_type_fields(field_type) without return types